calling GL_EndRendering will do a buffer swap...
that's not going to be pretty. you'll get flickering each time a file is loaded. if you're running on an engine with a small hunk (and small model cache) you'll end up swapping buffers mid-frame, and that's not going to be pretty. And if vsync is active, you'll limit loading to 60 files per second or so. If you really really want to keep this feature, create a child window with the image in it. :)
The 'correct' way is to do disk access in an entirely separate thread from the renderer. If you have such a thread running at the time you finish a frame, draw a disk, if not then don't. But then that's a major overhaul of most of the engine. :)
Tbh, if you're loading stuff, then show the qplaque. if you're not loading stuff, then don't. You shouldn't really be loading stuff mid-level, which is what the disk icon is there. The same reason as the turtle. And I don't remember seeing the turtle for ages now.
The point of that icon is to tell the user that its going slow because its loading stuff from the disk. Just make it appear for the next half a second (after the access), rather than for the frames it was shown in, and you get something with the same intended effect, without flickering, which lasts longer than a fraction of a second.
But if you consider the disk icon to be there because it genuinely takes a while to access the disk, then you're trying to play quake with your data set the other side of an isdn connection - which is what id did briefly or something. And I really have no idea what to say to that, other than 'ARE YOU CRAZY?!?'. But hey, each to their own.
Or get the user to type -intelsucks on the commandline in order to run your engine.