So today was basically all about just one bug. Random crash, which thankfully one of my colleagues managed to get a 100% repro for. It was some lighting data which was being corrupted. Now we have this thing called ‘free block trasher’, what it does is on deallocation of memory it fills the block with a marker. This is so if you are accessing freed data it will then crash, as normally there is a chance the data would still be valid. Anyway, this lighting data was getting the free trasher marker all over it. Turned out to be quite interesting. As the renderer is multithreaded, theres a hell of a lot going on at once (well up to five things anyway), so there has to be some order and synchronisation between stuff. Now what was happening was the lighting data was being recreated at the same time some GUI code was trying to use it, so it was picking up the stale data on a random occasion. The GUI code wasn’t waiting for the lighting data to be written. So a prerequisite was added to the GUI code and all was well with the world.
Went to the gym and did Pump. Then spent almost another hour and a half working out with Laverne. I’ve got great looking arms. She kept saying I had wonderful definition so I kept staring at myself in the mirror and agreeing. Came back and fixed a problem with photo colour cubes.
Mother has signed up to a new social website called streetlife.com, apparently a way to meet your neighbours and make new friends. I did have a quick look at the site, it’s got a thing for matching interests but I couldn’t find a tick box for ‘self-centred shopoholic’, so she may be a bit fucked.
Possibility of flying tomorrow, but the weather looks a bit shit and really I want a bit of sun for what I’m doing next.