Closed ghost closed 8 years ago
Is this the same problem as #320? Thanks for the email, I'll try it out. Does the problem happen consistently?
@cxong Silly me, it is the same and I have should known. It doesn't happen every time, but most times.
Unfortunately, like the other issue, I just can't reproduce it, not even once. I tried running under Windows, Linux, OS X. Maybe it's because I'm using debug builds? Unless there's a way to consistently reproduce this, or maybe someone who can reproduce this can step through the code using a debugger, there's not much I can do.
@cxong This seems to happen only after finishing/"game overing" a campaign a first time, in the second time you open a campaign.
It also might be an "uninitialized value" problem - in that case it might be harder to reproduce, as I made the experience that different CPUs handle it different.
In any case valgrind complains about memory leaks and using an uninitialized value for conditions at MapNewLoad when entering a campaign, but I'm not experienced enough to actually find it.
I have never been able to reproduce this, so I'm going to try valgrind and gradually fix all the errors I see. This may take a long time though, and there's no guarantee that the problem will be fixed this way. Since you are able to reproduce this somewhat reliably, please check back often and see if it has been fixed at some point.
@cxong That's really cool, thanks. Don't worry, I'll check out from time to time.
Maybe this compiler option helps as well, but I'm not sure about it.
@cxong It wasn't fixed in https://github.com/cxong/cdogs-sdl/commit/a49ef1777a8e73008f539be874c7f0eed6bb2a2c , sorry.
That said, make clean, cmake . and make should be enough to apply the changes?
just make is fine
@cxong Thanks.
Still no fix after https://github.com/cxong/cdogs-sdl/commit/1c35b7be19fd85a56ab32942fdb012f2fb497805 I fear.
When entering a campaign, valgrind outputs
`==996== Invalid read of size 1
==996== at 0x4C2E0E2: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==996== by 0x47318D: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== by 0x473D0B: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== Address 0x179c3e70 is 0 bytes inside a block of size 1 free'd
==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==996== by 0x472FE3: GunDescriptionTerminate (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== by 0x473E04: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl)
==996==
==996== Invalid read of size 1
==996== at 0x4C2E1C7: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x4731C0: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473D0B: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 0 bytes inside a block of size 1 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x472FE3: GunDescriptionTerminate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473E04: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E0E2: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x47318D: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473DC5: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 0 bytes inside a block of size 1 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x472FE3: GunDescriptionTerminate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473E04: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E1C7: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x4731C0: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473DC5: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 0 bytes inside a block of size 1 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x472FE3: GunDescriptionTerminate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473E04: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x474CAF: BulletAndWeaponInitialize (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41557D: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== INFO [MAIN ] [campaigns.c:87] LoadAllCampaigns(): Load campaigns from dir /home/clemens/cdogs-sdl/missions... INFO [MAIN ] [campaigns.c:95] LoadAllCampaigns(): Load dogfights from dir /home/clemens/cdogs-sdl/dogfights... INFO [MAIN ] [campaigns.c:102] LoadAllCampaigns(): Load quick play... INFO [MAIN ] [cdogs.c:484] main(): Starting game ==996== Conditional jump or move depends on uninitialised value(s) ==996== at 0x459773: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4156E1: main (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E0E2: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x47318D: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473D0B: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 928 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E0F4: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x47318D: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473D0B: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e71 is 929 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E1C7: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x4731C0: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473D0B: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 928 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E1E4: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x4731C0: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473D0B: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e71 is 929 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E0E2: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x47318D: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473DC5: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 928 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E0F4: strlen (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x47318D: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473DC5: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e71 is 929 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E1C7: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x4731C0: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473DC5: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e70 is 928 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== ==996== Invalid read of size 1 ==996== at 0x4C2E1E4: strcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x4731C0: LoadGunDescription (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x473DC5: WeaponLoadJSON (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479EAD: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== Address 0x179c3e71 is 929 bytes inside a block of size 1,536 free'd ==996== at 0x4C2BDEC: free (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==996== by 0x468A94: PicManagerClear (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x469CE6: PicManagerClearCustom (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x479D91: MapNewLoadArchive (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4598D4: MapNewLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x447783: CampaignLoad (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41BCA8: StartGameMode (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41EA29: MenuUpdate (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x4472BD: GameLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41CA3E: MenuLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x41C32F: MainMenu (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== by 0x418F1D: MainLoop (in /home/clemens/cdogs-sdl/src/cdogs-sdl) ==996== INFO [MAIN ] [gamedata.c:113] CampaignLoad(): loaded campaign/dogfight `.
I did load Space Pirates, not a dogfight campaign, though...
EDIT: cleaned up the first part.
@cxong Still not fixed in https://github.com/cxong/cdogs-sdl/commit/c8129aa308092dbb11bc240c77dd6f1bcc357f3a I fear.
I sent you the debug-logfiles, btw.
The attribute list says that Recoil, the parameter for spread takes floats, but using values smaller than 1 such as 0,1 has no effect...
EDIT: Same might apply to AngleOffset and SpreadWidth. EDIT2: It's weird, because with the machine gun it works. @cxong I'll send you an email with the gun where it doesn't work.