Search code examples
smalltalkpharo

Pharo Cog Spur Virtual Machine has stopped working, restore a broken image


When I try to launch a Pharo Image that I have been working on, Pharo opens, but then immediately crashes.

Can anyone help me figure out how to either:

  1. save my image?
  2. save the code in my image to copy to a new image?
  3. dig in and investigate this further?

When I open my image, it now crashes and shows the following crash message:

Pharo Cog Spur Virtual Machine has stopped working

In the details, I get the problem signature:

Problem signature:
  Problem Event Name:   APPCRASH
  Application Name: Pharo.exe
  Application Version:  5.0.0.0
  Application Timestamp:    00000000
  Fault Module Name:    StackHash_e5fb
  Fault Module Version: 0.0.0.0
  Fault Module Timestamp:   00000000
  Exception Code:   c0000005
  Exception Offset: PCH_94
  OS Version:   6.3.9600.2.0.0.256.4
  Locale ID:    2057
  Additional Information 1: e5fb
  Additional Information 2: e5fbb79501a5ec44936c965495b7ed9d
  Additional Information 3: 87e1
  Additional Information 4: 87e19eaa5875c71ec8875aadb1c1eca7

I am launching my Image from "Pharo Launcher version: 2.2".

My image was created from the template: Image template (Pharo 8.0 - 64bit (stable))

In my image I loaded Roassal3 from github://ObjectProfile/Roassal3:v0.9.5

I tried copying my image, and opening the copy, but same result (as expected I guess).

I had a look at PharDebug.log, but I'm not really sure what I'm looking for. This is a copy of by PhaorDebug.log.

Thanks


Solution

  • I started to answer in comment then it got too long for it.

    It is always best to save your work to CVS like merucrial or git. Pharo has a facility called iceberg for git. I would recommend pushing your changes instead of relying on the image. You have to then recover the file using the *.changes file.

    Also it would be helpful to see the PharoDebug.log. You can share it with us via pastebin.com or similar.

    If the Cogs VM crashes on you you have to go to a .changes file which should have the same name as your image file.

    For example:

    For image Pharo8.0-command_line.image, you will find your changes in Pharo8.0-command_line.changes file.

    To recover your code:

    1. Backup your changes file
    2. Download a fresh new image
    3. Run Pharo with new image
    4. Drag the .changes file into Pharo
    5. Use Change browser to pick up the code you want to recover.

    Report the bug:

    You should report the bug at Bug report for Pharo.