Without knowing what project is to blame or where the source code is, I think this actually looks like a glPixelStorei bug, or lack of glPixelStorei. If you don't call glPixelStorei before your glTexImage2D then the default unpack alignment is 4 bytes. And it's possible the font glyph cache code doesn't know that, assuming default stride alignment is to 1 byte accuracy instead.
Without knowing what project is to blame or where the source code is, I think this actually looks like a glPixelStorei bug, or lack of glPixelStorei. If you don't call glPixelStorei before your glTexImage2D then the default unpack alignment is 4 bytes. And it's possible the font glyph cache code doesn't know that, assuming default stride alignment is to 1 byte accuracy instead.