2015-07-06 9:55 GMT+02:00 Matthieu Lacaton <matthieu.laca...@gmail.com>:
> Hello,
>
> I would just like to report something that happened to me today.
>
> As I was working on a project, I tried inserting an instance variable to
> one of my classes.
> Starting from this moment something became very weird. First, some
> subclasses were not listed as subclasses anymore, then I realised during
> the execution that allocating my new instance variable was actually
> modifying another instance variable.
>
> I tried digging up a bit and I found out that many of my methods were a
> complete mess.
> When browsing with Nautilus the title of the method was for example:
> "addProperty:key:". However the corpse of the method was totally random
> with something like that for example:
> "ient;
>         width: 1.
>     graphic strokeStyle: _strokeStyle"
>
> So, reportedly, the name of the method was "ient;" ...
>
> Basically I had many methods where the source code was just random chunks
> of other methods.
>
> The funnier thing is that everything worked perfectly fine during
> execution.
>
> I tried to look at different backup images I had to see when everything
> began to go wrong and I realised I had been working with broken source code
> for about a week.
>

What image version did you use?



>
> So if I understand correctly, I probably messed up with the .changes file
> (I don't remembr how but maybe I copied the .image without the .changes or
> renamed the .image or i don't know).
> And now the compiled code is okay but the source code is lost so
> everything is working fine until the system tries to recompile everything ?
>
> Now my question is : is there a way to fix the issue ? I tried exporting
> the package to a .mcz but I had bugs everywhere. I imported the old working
> package to an .mcz and tried browsing the differences with the broken one
> just to manually get back eveything I changed during this week. But I
> couldn't cause there were bugs everytime I tried to browse the changes.
> Basically, are all my changes definitely lost or is there a way to get it
> back somehow (at least the raw source code) ?
>

Maybe you can iterator over all methods decompile, and save as new code?
Maybe you can open the image without the changes file and try to create a
package or file out the package?


>
> I know that I fucked up and this is my fault but it would have been nice
> if something (anything) told me earlier that I did something wrong. I've
> been adding / modifying lots of methods and even executing the program for
> a week now and absolutely nothing told me that something was wrong until I
> tried adding an instance variable.
>

No, not your fault, this should not happen. The changes file is for
"recover if you messed up the image". If the changes file gets corrupted,
then this is a serious bug.


>
> I am in a situation where I actually wrote and "saved" code and now it
> seems lost... that's frustrating :(
>
> Thanks,
>
> Matthieu
>

Reply via email to