dtfile: Fix crash when trying to open filter dialog
authorMarcin Cieslak <saper@saper.info>
Tue, 2 Oct 2012 16:03:41 +0000 (18:03 +0200)
committerJon Trulson <jon@radscan.com>
Wed, 3 Oct 2012 00:57:12 +0000 (18:57 -0600)
On 64-bit machine dtfile crashes when opening
list of file types to filter in Encaps.c:

   _DtShowDialog (parent=0x805c80900, map_parent=0x0, top_rec=0x805ce3600,
     dialog_data=0x805db25e0, change_proc=0x4489f0 <FilterChange+16>,
     change_data=0x805ce3600, close_proc=0x4489c0 <FilterClose+16>,
     close_data=0x805ce3600, workspaces=0x0, iconify_state=0 '\0',
     ignoreCache=0 '\0', title=0x0, classHints=0x0) at Encaps.c:531

531         ResetFlag(NULL,fr->close);

cde/programs/dtfile/FileDialog.c

index 6795f77ca9be0889e6238362600490bc220d98ce..406afc1e512f567afd913070df037a2228d19f2e 100644 (file)
@@ -2878,9 +2878,11 @@ ResetFlag(
    Widget w)
 {
    Arg args[2];
+   XtArgVal flag0;
    int flag;
-   XtSetArg (args[0], XmNuserData, &flag);
+   XtSetArg (args[0], XmNuserData, &flag0);
    XtGetValues(w,args,1);
+   flag = (int)flag0;
    if(flag != FLAG_SET)
       return;
    flag = FLAG_RESET;