Still working on the second tutorial map, but I've also played around with some other stuff...
I've just implemented error handling of out of memory issues on old computers (my ol' trusty Eee PC 901 from 2008 runs out of memory if I don't disable some background programs -- mainly Dropbox -- so it's perfect for testing this stuff). It was a bit tricky, since some of the graphics assets loading happens in a separate thread. Basically, when loading a game, a new thread is created where data files are read and the asset files are loaded from disk via SDL2. The loaded asset files are then applied to OpenGL textures in the main thread (since OpenGL operations have to take place in the main thread). This means that there are two places where the program is most likely to run out of memory: when loading the asset files from disk in the separate thread and when turning them into OpenGL textures. So I had to account for both of these and handle killing the thread and deleting all the loaded textures properly. It seems to work now (though it may not be deleting all textures properly, so I'll have to run some more tests on that).
When I got tired of the more heavy development work, I chilled out by making some items for drawers. These items can't be taken or used, but you can move them around in drawers to search for useful stuff hidden underneath:
The red keycard is the only useful item in this drawer (indicated by the green glow/outline).