C0deH4cker / Fission

The programming language that defies the laws of physics
MIT License
23 stars 4 forks source link

Fix memory corruption bugs #3

Closed m-ender closed 9 years ago

m-ender commented 9 years ago

The trace flag was not initialised if there the command-line option is not set.

More importantly, the stacks and queues in Storage::getTop were passed by value, such that the memory was already free'd by the time the values are copied into the atom, leading to all sorts of memory corruption and nasal demons.

C0deH4cker commented 9 years ago

Thanks for your finds! I had already caught the bug with stacks and queues being passed by value and fixed it in my local changes, but I hadn't yet caught the uninitialized trace variable one, so thank you for finding it! This will be fixed in my batch of local changes.