Hi,

  I tested here a few applications in Windows XP 32 bits and they worked
just fine.

  This call stack is not helping either, because it is not making sense at
all. But that's expected since it is trying to show a dialog that was just
destroyed.

  From the code you sent, it seems that the name is not being removed after
the dialog is destroyed.

  I added this code to bigtest.c:

  IupMainLoop();

/////////////////////////
  IupDestroy(dlg);
  dlg = IupGetHandle("BIGTEST");
  if (dlg)
  {
    IupShowXY(dlg, 100, IUP_CENTER);
    IupMainLoop();
  }
/////////////////////////

  IupClose();

  And it worked ok in Windows 10 and in Windows XP. The name is correctly
being removed.

  It seems that the problem is elsewhere in that dialog. Memory invasion
provokes these weird situations. I suggest you to try to isolate parts of
the dialog/code to be able to identify where the problem is really
happening, and if it is inside IUP or inside the application.

Best,
Scuri




2017-06-14 10:02 GMT-03:00 Ranier VF <ranier_...@hotmail.com>:

> Hi Antonio,
> With Windows XP 32 bits.
>
> Possible error:
>
> Error #65: UNADDRESSABLE ACCESS of freed memory: reading
> 0x0332cf08-0x0332cf09 1 byte(s)
> # 0 iup.dll!IupGetFocus                        +0x2c     (0x1000508c
> <iup.dll+0x508c>)
> # 1 iup.dll!iupCallGetFocusCb                  +0x55     (0x100051a6
> <iup.dll+0x51a6>)
> # 2 iup.dll!iupdrvSendMouse                    +0x51e    (0x100636ef
> <iup.dll+0x636ef>)
> # 3 iup.dll!iupwinBaseMsgProc                  +0x174    (0x10061b65
> <iup.dll+0x61b65>)
> # 4 iup.dll!iupwinBaseMsgProc                  +0x774    (0x10062165
> <iup.dll+0x62165>)
> # 5 iup.dll!iupdrvBaseSetTipVisibleAttrib      +0x217c   (0x1006879d
> <iup.dll+0x6879d>)
> # 6 iup.dll!iupdrvBaseSetTipVisibleAttrib      +0x280a   (0x10068e2b
> <iup.dll+0x68e2b>)
> # 7 USER32.dll!GetDC                           +0x6c     (0x7e368734
> <USER32.dll+0x8734>)
> # 8 USER32.dll!GetDC                           +0x14e    (0x7e368816
> <USER32.dll+0x8816>)
> # 9 USER32.dll!DefWindowProcW                  +0x17f    (0x7e378ea0
> <USER32.dll+0x18ea0>)
> #10 USER32.dll!DefWindowProcW                  +0x1cb    (0x7e378eec
> <USER32.dll+0x18eec>)
> #11 ntdll.dll!KiUserCallbackDispatcher         +0x12     (0x7c90e453
> <ntdll.dll+0xe453>)
> #12 iup.dll!IupCopyClassAttributes             +0x1100   (0x10012771
> <iup.dll+0x12771>)
> #13 iup.dll!IupCopyClassAttributes             +0x1372   (0x100129e3
> <iup.dll+0x129e3>)
> #14 iup.dll!IupShow                            +0x67     (0x1000ced8
> <iup.dll+0xced8>)
> #15 iup_unit_close_cb
>  [c:\usr\src\rcpdv\unit_iup.c:206]
> #16 iup.dll!iupdrvRegisterDragDropAttrib       +0x14e9   (0x10075b8a
> <iup.dll+0x75b8a>)
> #17 iup.dll!iupdrvBaseSetTipVisibleAttrib      +0x217c   (0x1006879d
> <iup.dll+0x6879d>)
> #18 iup.dll!iupdrvBaseSetTipVisibleAttrib      +0x280a   (0x10068e2b
> <iup.dll+0x68e2b>)
> #19 USER32.dll!GetDC                           +0x6c     (0x7e368734
> <USER32.dll+0x8734>)
> Note: @0:00:53.906 in thread 3660
> Note: 0x0332cf08-0x0332cf09 overlaps memory 0x0332cf08-0x0332cf54 that was
> freed here:
> Note: # 0 replace_free
> [d:\drmemory_package\common\alloc_replace.c:2706]
> Note: # 1 iup.dll!IupDestroy                         +0x111    (0x10007142
> <iup.dll+0x7142>)
> Note: # 2 iup_unit_close_cb
>  [c:\usr\src\rcpdv\unit_iup.c:200]
> Note: # 3 iup.dll!iupdrvRegisterDragDropAttrib       +0x14e9
>  (0x10075b8a <iup.dll+0x75b8a>)
> Note: # 4 iup.dll!iupdrvBaseSetTipVisibleAttrib      +0x217c
>  (0x1006879d <iup.dll+0x6879d>)
> Note: # 5 iup.dll!iupdrvBaseSetTipVisibleAttrib      +0x280a
>  (0x10068e2b <iup.dll+0x68e2b>)
> Note: instruction: cmp    (%esi) $0x49
>
> iup.dll!IupGetFocus?
>
> Best regards,
>
> Ranier
> ________________________________________
> De: Antonio Scuri <antonio.sc...@gmail.com>
> Enviado: quarta-feira, 14 de junho de 2017 00:50
> Para: IUP discussion list.
> Assunto: Re: [Iup-users] Possible regression with iup 3.22?
>
> Gtk or Windows?
>
> Em 13/06/2017 21:48, "Ranier VF" <ranier_...@hotmail.com<mailto:
> ranier_...@hotmail.com>> escreveu:
> Hi Antonio,
> Possible regression with iup 3.22?
>
> With 3.20, the code below run clean:
>
>     IupDestroy(dlg);
>
>         /* Restore DLG_MAIN */
>         dlg = IupGetHandle("DLG_MAIN");
>         if (dlg != NULL) {
>            IupSetAttribute(dlg, "PLACEMENT", "NORMAL");
>            IupShow(dlg); // <----- with 3.22 crash
>         }
>
> But with 3.22, crash with violation access.
>
> Thank you.
>
> Ranier
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Iup-users mailing list
> Iup-users@lists.sourceforge.net<mailto:Iup-users@lists.sourceforge.net>
> https://lists.sourceforge.net/lists/listinfo/iup-users
>
> ------------------------------------------------------------
> ------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> Iup-users mailing list
> Iup-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/iup-users
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Iup-users mailing list
Iup-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to