Often, with some implementations of the / OpenGL drivers, the window-creating action has the side effect of determining where the memory for textures, off-screen buffers and the window itself will actually be stored, and therefore how large it will be.
Without creating a window (or, more precisely, a display context), it is difficult (i.e. impossible) to determine where to place the texture after loading.
Flexo source
share