Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#380 closed defect (fixed)

etoys: not starting up (segfault)

Reported by: sascha_silbe Owned by: bert
Priority: Unspecified by Maintainer Milestone: Unspecified
Component: Etoys Version: Git as of bugdate
Severity: Major Keywords:
Cc: etoys-notify@… Distribution/OS: Ubuntu
Bug Status: Unconfirmed

Description

On Ubuntu intrepid/amd64, using sugar-jhbuild, the Etoys activity does not start up.

Begin org.vpri.EtoysActivity-1.log

[: 5: ==: unexpected operator

Segmentation fault

18230392 Cursor>beCursor
18230576 [] in Cursor class>currentCursor:
18230300 BlockContext>on:do:
18229564 Cursor class>currentCursor:
18229380 InputSensor>currentCursor:
18229288 Cursor>show
17383756 SmalltalkImage>snapshot:andQuit:embedded:
17383664 SmalltalkImage>snapshot:andQuit:
17383316 [] in UndefinedObject>?
14042504 WorldState>runStepMethodsIn:
14042412 PasteUpMorph>runStepMethods
14023684 WorldState>doOneCycleNowFor:
14023592 WorldState>doOneCycleFor:
14023500 PasteUpMorph>doOneCycle
14007568 [] in Project class>spawnNewProcess
14007752 [] in BlockContext>newProcess

End org.vpri.EtoysActivity-1.log

Begin shell.log excerpt

1234903248.234301 DEBUG root: launching: ['/home/sugar/sugar-jhbuild/install/share/sugar/activities/Etoys.activity/bin/etoys-activity', '-b', 'org.vpri.EtoysActivity', '-a', 'ff26bd28c17cd1587fd462087cc720ce591a033f']
1234903248.420161 DEBUG root: activity_added_cb: <Activity object at 0x32202d0 (SugarHomeActivity at 0x31d5c60)>
1234903248.440928 DEBUG root:
activity_changed_cb: <Activity object at 0x32202d0 (SugarHomeActivity at 0x31d5c60)>
1234903248.487550 DEBUG root: ('Setup widget', <_IconWidget object at 0x3217f00 (SugarTrayIconWidget at 0x31e6a90)>)
1234903248.488496 DEBUG root: ('Setup widget', <_IconWidget object at 0x3217f00 (SugarTrayIconWidget at 0x31e6a90)>)
1234903248.506663 DEBUG root: Palette.popdown immediate False
1234903248.508033 ERROR root: set_active() failed: org.freedesktop.DBus.Error.ServiceUnknown: The name :1.19 was not provided by any .service files
1234903248.775580 DEBUG root: None launched in 0.361781 seconds.
Traceback (most recent call last):

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 499, in _active_window_changed_cb

act = self._get_activity_by_xid(window.get_xid())

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 480, in _get_activity_by_xid

if home_activity.get_xid() == xid:

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 172, in get_xid

return self._window.get_xid()

AttributeError: 'NoneType' object has no attribute 'get_xid'
1234903250.294868 DEBUG root: activity_added_cb: <Activity object at 0x32230f0 (SugarHomeActivity at 0x31e2aa0)>
1234903250.315281 ERROR root: Launcher for None is missing
1234903250.317506 DEBUG root: None launched in 0.029077 seconds.
Traceback (most recent call last):

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 476, in _window_closed_cb

self._remove_activity_by_xid(window.get_xid())

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 526, in _remove_activity_by_xid

home_activity = self._get_activity_by_xid(xid)

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 480, in _get_activity_by_xid

if home_activity.get_xid() == xid:

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 172, in get_xid

return self._window.get_xid()

AttributeError: 'NoneType' object has no attribute 'get_xid'
1234903339.098354 DEBUG root: Activity ff26bd28c17cd1587fd462087cc720ce591a033f still launching, assuming it failed...
1234903339.100377 DEBUG root: Activity ff26bd28c17cd1587fd462087cc720ce591a033f (None) launch failed
Traceback (most recent call last):

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 575, in _check_activity_launched

self.notify_launch_failed(activity_id)

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 558, in notify_launch_failed

self._remove_activity(home_activity)

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 514, in _remove_activity

new_activity = self._get_activity_by_xid(window.get_xid())

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 480, in _get_activity_by_xid

if home_activity.get_xid() == xid:

File "/home/sugar/sugar-jhbuild/install/lib/python2.5/site-packages/jarabe/model/shell.py", line 172, in get_xid

return self._window.get_xid()

AttributeError: 'NoneType' object has no attribute 'get_xid'

End shell.log excerpt

Change History (4)

comment:1 Changed 12 years ago by bert

  • Cc etoys-notify@… added
  • Status changed from new to assigned

Looks like a 64 bit problem. Could you try applying this fix in sugar-jhbuild/source/squeak?

Index: platforms/unix/vm-display-X11/sqUnixX11.c
===================================================================
--- platforms/unix/vm-display-X11/sqUnixX11.c	(revision 1965)
+++ platforms/unix/vm-display-X11/sqUnixX11.c	(working copy)
@@ -3944,7 +3944,7 @@
   if (!(major > 0 || minor >= 5))
     return 0;
 
-  image= XCreateImage(stDisplay, DefaultVisual(stDisplay, DefaultScreen(stDisplay)), 32, ZPixmap, 0, (char *)cursorBitsIndex, extentX, extentY, 32, 0);
+  image= XCreateImage(stDisplay, DefaultVisual(stDisplay, DefaultScreen(stDisplay)), 32, ZPixmap, 0, (char *)pointerForOop(cursorBitsIndex), extentX, extentY, 32, 0);
   pixmap= XCreatePixmap (stDisplay, DefaultRootWindow(stDisplay), extentX, extentY, 32);
   gc= XCreateGC(stDisplay, pixmap, 0, 0);
   XPutImage(stDisplay, pixmap, gc, image, 0, 0, 0, 0, extentX, extentY);

comment:2 Changed 12 years ago by bert

  • Status changed from assigned to accepted

Actually, I committed the proposed fix so you can simply "sugar-jhbuild buildone squeak" to try.

comment:3 follow-up: Changed 12 years ago by sascha_silbe

Your patch (applied it manually) did the trick, thanks! Astonishing what a difference a single word can make. :)

While I had just look at the wrong source again (etoys instead of squeak), I probably wouldn't have been able to fix it myself anyway (without a lot of research about squeak internals).

comment:4 in reply to: ↑ 3 Changed 12 years ago by bert

  • Resolution set to fixed
  • Status changed from accepted to closed

Replying to sascha_silbe:

Your patch (applied it manually) did the trick, thanks! Astonishing what a difference a single word can make. :)

Hehe, great!

While I had just look at the wrong source again (etoys instead of squeak), I probably wouldn't have been able to fix it myself anyway (without a lot of research about squeak internals).

"squeak" in jhbuild is the platform-dependent part, the virtual machine, written in Smalltalk and C . "etoys" itself is platform-independent (all Smalltalk).

I think we can close this.

Note: See TracTickets for help on using tickets.