I finally managed to get the Windows version of release 3.0.2 built last night (woo hoo!). Or so I thought. I installed and tested it, and ran in to the error reported here:
I was able to re-create that error last week on Linux by setting the build type to Release. Since Release sets some cflags to use –O3, I tried changing them back to –O2, but to no avail. The only other cflag being set is DNDEBUG, which I didn’t think too much about at the time. I eventually got busy with other things and didn’t investigate any further.
Fast forward to yesterday, the Windows build is crashing in the same place in all build configurations (Release, Debug). It happens right at the call to DriverTable::SortDrivers() in server/server.cc, PrintUsage(). I set a breakpoint there and tried to step into the code, but it immediately errors and jumps to some file-handle related function. The Windows error message has something to do with an access violation; I don’t have the exact message in front of me but I can post it later today. I think it has something to do with char** sortedlist being uninitialized, but it gets allocated in SortDrivers before anything happens.
server.cc and drivertable.cc haven’t been changed in 8 or more months, I am just wondering if anyone has any ideas before I dig deeper into the problem.