> On Sat, Sep 29, 2012 at 1:27 PM, Marcin Cieslak <sa...@saper.info> wrote:
> > On Sat, 29 Sep 2012, Frederic Koehler wrote:
> >> This is on a 64-bit machine. Opening the help window works fine the
> >> first time [and

On Sat, 29 Sep 2012, Frederic Koehler wrote:

> That's weird. On my machine _UxUxParent is also NULL
> but the program runs fine [no segfaults, I can even browse icons
> and create new entries for my deskbar now].

I fixed the problem - 

diff --git a/cde/programs/dtcreate/UxXt.h b/cde/programs/dtcreate/UxXt.h
index 76eec8a..34b3dde 100644
--- a/cde/programs/dtcreate/UxXt.h
+++ b/cde/programs/dtcreate/UxXt.h
@@ -170,6 +170,8 @@ extern  void            UxMrmRegisterClass( char *, Widget 
(*)(Widget, String, A
 /* The following are declarations of the functions in UxXt.c */
 
 
+extern  void*          UxNewContext (size_t size, int isSubclass);
+
 extern  int             UxPopupInterface( Widget wgt, XtGrabKind grab_flag );
 extern  int             UxPopdownInterface( Widget wgt );
 extern  int             UxDestroyInterface( Widget wgt);

Can you give me your value of UxContext after this:

1680            UxCreateActionAppShellContext = UxContext =
1681                    (_UxCCreateActionAppShell *) UxNewContext( 
sizeof(_UxCCreateActionAppShell), False );


My value after patching:

(gdb) print UxContext
$1 = (_UxCCreateActionAppShell *) 0x805c13c00

without the patch

rax            0x805c13c00      34456288256

is returned from the function, but it gets truncated
to 32 bit value:

0x000000000040a08d <create_applicationShell1+29>:       callq  0x412510 
<UxNewContext>
0x000000000040a092 <create_applicationShell1+34>:       movslq %eax,%rax

rax            0x5c13c00        96549888

so the next address causes a fault.

FreeBSD addresses on the heap don't fit into 32-bits so
that's probably the reason why one can get away with
many 64-bit coding problems on Linux.

//Marcin


------------------------------------------------------------------------------
How fast is your code?
3 out of 4 devs don\\\'t know how their code performs in production.
Find out how slow your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219672;13503038;z?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
cdesktopenv-devel mailing list
cdesktopenv-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/cdesktopenv-devel

Reply via email to