Maintain Solaris ABI compatibility across X11R5 -> X11R6 upgrade. Need to evaluate for submission upstream. Code in Event.c checked in without a BugID: D 1.5 96/01/19 17:37:50 stuartm 6 5 00016/00000/01844 added compatability functions _XtRegisterWindow and _XtUnregisterWindow They simply call the newer drawable routines. Code in NextEvent.c checked in under: Bug 14917447 - SUNBT1254790 _XtwaitForSomething renamed in X11R6 with no backcompat The symbol _XtwaitForSomething in X11R5 was changed to _XtWaitForSomething in X11R6. This violates backwards compatibility and disables all extensions which use the symbol. Incorporates fix for Oracle Bug 14974628 - SUNBT4185875 _XtwaitForSomething implemented incorrectly on X11R6. It does not work. which added the missing "return" keywords. --- a/src/Event.c 2022-11-07 19:12:33.474188705 -0800 +++ b/src/Event.c 2022-11-07 19:13:39.893732706 -0800 @@ -590,6 +590,14 @@ UNLOCK_APP(app); } +/* need this for backward compatability */ +void _XtRegisterWindow( + Window window, + Widget widget) +{ + XtRegisterDrawable(XtDisplay(widget), (Drawable)window, widget); +} + void XtUnregisterDrawable(Display *display, Drawable drawable) { @@ -641,6 +649,14 @@ UNLOCK_APP(app); } +/* need this for backward compatability */ +void _XtUnregisterWindow( + register Window window, + register Widget widget) +{ + XtUnregisterDrawable(XtDisplay(widget), (Drawable)window); +} + static void ExpandWWTable(register WWTable tab) { --- a/src/NextEvent.c 2022-11-07 19:13:50.529610200 -0800 +++ b/src/NextEvent.c 2022-11-07 19:14:35.844822484 -0800 @@ -782,6 +782,33 @@ #define SeCallProc(ptr) \ (*ptr->se_proc) (ptr->se_closure, (XtSignalId*)&ptr); +#ifdef sun /*SUNSOFT */ +int _XtwaitForSomething( + _XtBoolean ignoreTimers, + _XtBoolean ignoreInputs, + _XtBoolean ignoreEvents, + _XtBoolean block, + unsigned long *howlong, + XtAppContext app) +{ +#ifdef XTHREADS +/* fix for bug 4185875 leob */ +return _XtWaitForSomething(app, + ignoreEvents, ignoreTimers, ignoreInputs, TRUE, + block, + TRUE, + howlong); +#else +/* fix for bug 4185875 leob */ +return _XtWaitForSomething(app, + ignoreEvents, ignoreTimers, ignoreInputs, TRUE, + block, + howlong); +#endif + +} +#endif /* SUNSOFT */ + /* * Public Routines */