mikeo@sae.UUCP (Michael Ovington) (06/16/90)
For a while now, I have occasionally seen an X protocol error when using the Motif PushButton widget as it tries to repaint the widget. I see the problem mostly in menus, but have also seen it with non-menu buttons. I can't reliably recreate it but have caught it on two different machines in Syncronous mode in a debugger (stack traces follow). Since I'm not creating or manipulating the GC that PushB is using, I'm guessing it is freeing the GC at the wrong time. Has anyone seen this problem already? And more importantly, does anyone know of a workaround or if it's fixed in newer releases of Motif (we have 1.0). I don't have motif source code and use the Motif libraries supplied with the machine. Even if they are buggy, we still have to generate a product that our customers can use without having it die. The actual error is: X Error: BadGC, invalid GC parameter Request Major code 70 () Request Minor code ResourceID 0x100003b Error Serial #21578 Current Serial #21579 Process terminated On a Unisys 6000 on an expose event I get Breakpoint at XlibInt.c: No such file or directory 0xd33bf in _XError:No lines in file *t _XError(0x44af9c,0xbfffe47c) [XlibInt.c] _XReply(0x44af9c,0xbfffe47c,0,1) [XlibInt.c] XSync(0x44af9c,0) [XSync.c] _XSyncFunction(0x44af9c) [XSynchro.c] XFillRectangle(0x44af9c,0xb0004a,0x470400,3,3,0x41,0x12) [XFillRect.c] Redisplay(0x470888,0xbfffe960,0x44c144) [PushB.c] DispatchEvent(0xbfffe960,0x470888,0x8000) [Event.c] DecideToDispatch(0xbfffe960) [Event.c] XtDispatchEvent(0xbfffe960) [Event.c] EVT_ProcessEvents() [evt.c:581] main(argc=0,argv=0xbfffea04) [eui.c:2577] On a DG AViiON while selecting a PushButton in a menubar I get Breakpoint at _XError: address 0x16bf74 : No lines in file *t _XError() [0x16bf74] _XReply() [0x16b444] XSync() [0x168cf4] _XSyncFunction() [0x168d6c] XFillRectangle() [0x15dd14] Redisplay() [0xdd848] Arm() [0xdbabc] _XtTranslateEvent() [0x1526f8] DispatchEvent() [0x139534] DecideToDispatch() [0x139d10] XtDispatchEvent() [0x139d84] EVT_ProcessEvents() [evt.c:581] main() [0x19e0c]