Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libX11 for openSUSE:Factory checked 
in at 2024-04-08 17:37:39
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libX11 (Old)
 and      /work/SRC/openSUSE:Factory/.libX11.new.1905 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libX11"

Mon Apr  8 17:37:39 2024 rev:54 rq:1165729 version:1.8.9

Changes:
--------
--- /work/SRC/openSUSE:Factory/libX11/libX11.changes    2024-03-25 
21:08:37.654128926 +0100
+++ /work/SRC/openSUSE:Factory/.libX11.new.1905/libX11.changes  2024-04-08 
17:37:56.621944338 +0200
@@ -1,0 +2,20 @@
+Sat Apr  6 03:06:49 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- Update to 1.8.9
+  * Fix regressions introduced in 1.8.8 (!245, !248) - this includes
+    reverting for now the previous "Fix XIM input sometimes jumbled
+    (#198, !236)"
+- supersedes
+  * U_0001-xlibi18n-restore-parse_line1-for-WIN32-builds.patch
+  * U_0002-Revert-imDefLkup-Commit-first-info-in-XimCommitInfo.patch
+  * U_0003-Revert-ximcp-Unmark-to-fabricate-key-events-with-XKe.patch
+
+-------------------------------------------------------------------
+Fri Apr  5 10:42:25 UTC 2024 - Stefan Dirsch <sndir...@suse.com>
+
+- U_0001-xlibi18n-restore-parse_line1-for-WIN32-builds.patch
+  U_0002-Revert-imDefLkup-Commit-first-info-in-XimCommitInfo.patch
+  U_0003-Revert-ximcp-Unmark-to-fabricate-key-events-with-XKe.patch
+  * fix regressions in 1.8.8 (issues #204, #205, #206, #207, #208)
+
+-------------------------------------------------------------------

Old:
----
  libX11-1.8.8.tar.xz

New:
----
  libX11-1.8.9.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libX11.spec ++++++
--- /var/tmp/diff_new_pack.CFMk3p/_old  2024-04-08 17:37:57.509977117 +0200
+++ /var/tmp/diff_new_pack.CFMk3p/_new  2024-04-08 17:37:57.509977117 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           libX11
-Version:        1.8.8
+Version:        1.8.9
 Release:        0
 Summary:        Core X11 protocol client library
 License:        MIT

++++++ libX11-1.8.8.tar.xz -> libX11-1.8.9.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/ChangeLog new/libX11-1.8.9/ChangeLog
--- old/libX11-1.8.8/ChangeLog  2024-03-24 23:16:28.000000000 +0100
+++ new/libX11-1.8.9/ChangeLog  2024-04-06 01:02:36.000000000 +0200
@@ -1,3 +1,43 @@
+commit a465588218c1643eedc35b3c24409cb775454eee
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Fri Apr 5 15:50:06 2024 -0700
+
+    libX11 1.8.9
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
+commit 52a191ee096e93cf711f77b6a56c508b68afc0b6
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Fri Apr 5 13:15:32 2024 +1000
+
+    Revert "ximcp: Unmark to fabricate key events with XKeyEvent serial"
+    
+    This commit causes a regression, see #205, #206, #207, #208.
+    
+    This reverts commit 024d229fdf88a7755577b01b46af6ef908d599e0.
+
+commit 3ea9f4f769fecbbc8c5210c5833ad83ab8d9e97e
+Author: Peter Hutterer <peter.hutte...@who-t.net>
+Date:   Fri Apr 5 13:14:33 2024 +1000
+
+    Revert "imDefLkup: Commit first info in XimCommitInfo"
+    
+    This commit causes a regression, see #205, #206, #207, #208.
+    
+    This reverts commit 041b5291f0956c5cda5054be2981c0d02b009a4c.
+
+commit 9afd55ada5d7a3c1d3ed23ff8451629a1d989a7f
+Author: Alan Coopersmith <alan.coopersm...@oracle.com>
+Date:   Mon Mar 25 11:51:03 2024 -0700
+
+    xlibi18n: restore parse_line1 for WIN32 builds
+    
+    Accidentally removed by __UNIXOS2__ cleanup
+    Closes: #204
+    Fixes: 225a4bbb ("unifdef __UNIXOS2__")
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersm...@oracle.com>
+
 commit e4927d0c4fbf950bc45fc27309290e1911e75f42
 Author: Alan Coopersmith <alan.coopersm...@oracle.com>
 Date:   Sun Mar 24 15:02:23 2024 -0700
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/README.md new/libX11-1.8.9/README.md
--- old/libX11-1.8.8/README.md  2024-03-24 23:15:58.000000000 +0100
+++ new/libX11-1.8.9/README.md  2024-04-06 01:02:05.000000000 +0200
@@ -31,6 +31,11 @@
 
   https://www.x.org/wiki/Development/Documentation/SubmittingPatches
 
+## Release 1.8.9
+
+ * Fix regressions introduced in 1.8.8 (!245, !248) - this includes reverting
+   for now the previous "Fix XIM input sometimes jumbled (#198, !236)"
+
 ## Release 1.8.8
 
  * Fix XIM input sometimes jumbled (#198, !236)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/configure new/libX11-1.8.9/configure
--- old/libX11-1.8.8/configure  2024-03-24 23:16:13.000000000 +0100
+++ new/libX11-1.8.9/configure  2024-04-06 01:02:20.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.72 for libX11 1.8.8.
+# Generated by GNU Autoconf 2.72 for libX11 1.8.9.
 #
 # Report bugs to <https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues>.
 #
@@ -675,8 +675,8 @@
 # Identity of this package.
 PACKAGE_NAME='libX11'
 PACKAGE_TARNAME='libX11'
-PACKAGE_VERSION='1.8.8'
-PACKAGE_STRING='libX11 1.8.8'
+PACKAGE_VERSION='1.8.9'
+PACKAGE_STRING='libX11 1.8.9'
 PACKAGE_BUGREPORT='https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues'
 PACKAGE_URL=''
 
@@ -1546,7 +1546,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-'configure' configures libX11 1.8.8 to adapt to many kinds of systems.
+'configure' configures libX11 1.8.9 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1617,7 +1617,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of libX11 1.8.8:";;
+     short | recursive ) echo "Configuration of libX11 1.8.9:";;
    esac
   cat <<\_ACEOF
 
@@ -1790,7 +1790,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-libX11 configure 1.8.8
+libX11 configure 1.8.9
 generated by GNU Autoconf 2.72
 
 Copyright (C) 2023 Free Software Foundation, Inc.
@@ -2273,7 +2273,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by libX11 $as_me 1.8.8, which was
+It was created by libX11 $as_me 1.8.9, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -4984,7 +4984,7 @@
 
 # Define the identity of the package.
  PACKAGE='libX11'
- VERSION='1.8.8'
+ VERSION='1.8.9'
 
 
 printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
@@ -24183,7 +24183,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by libX11 $as_me 1.8.8, which was
+This file was extended by libX11 $as_me 1.8.9, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -24251,7 +24251,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-libX11 config.status 1.8.8
+libX11 config.status 1.8.9
 configured by $0, generated by GNU Autoconf 2.72,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/configure.ac 
new/libX11-1.8.9/configure.ac
--- old/libX11-1.8.8/configure.ac       2024-03-24 23:15:58.000000000 +0100
+++ new/libX11-1.8.9/configure.ac       2024-04-06 01:02:05.000000000 +0200
@@ -1,7 +1,7 @@
 
 # Initialize Autoconf
 AC_PREREQ([2.70])
-AC_INIT([libX11], [1.8.8],
+AC_INIT([libX11], [1.8.9],
         [https://gitlab.freedesktop.org/xorg/lib/libx11/-/issues], [libX11])
 AC_CONFIG_SRCDIR([Makefile.am])
 AC_CONFIG_HEADERS([src/config.h include/X11/XlibConf.h])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/modules/im/ximcp/imDefFlt.c 
new/libX11-1.8.9/modules/im/ximcp/imDefFlt.c
--- old/libX11-1.8.8/modules/im/ximcp/imDefFlt.c        2024-03-24 
23:15:58.000000000 +0100
+++ new/libX11-1.8.9/modules/im/ximcp/imDefFlt.c        2024-04-06 
01:02:05.000000000 +0200
@@ -142,9 +142,9 @@
 {
     Xim                im = (Xim)ic->core.im;
 
-    if (_XimIsFabricatedSerial(im, ev->serial)) {
+    if (IS_FABRICATED(im)) {
        _XimPendingFilter(ic);
-       _XimUnfabricateSerial(im, ev->serial);
+       UNMARK_FABRICATED(im);
        return NOTFILTERD;
     }
 
@@ -203,9 +203,9 @@
 {
     Xim                im = (Xim)ic->core.im;
 
-    if (_XimIsFabricatedSerial(im, ev->serial)) {
+    if (IS_FABRICATED(im)) {
        _XimPendingFilter(ic);
-       _XimUnfabricateSerial(im, ev->serial);
+       UNMARK_FABRICATED(im);
        return NOTFILTERD;
     }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/modules/im/ximcp/imDefIm.c 
new/libX11-1.8.9/modules/im/ximcp/imDefIm.c
--- old/libX11-1.8.8/modules/im/ximcp/imDefIm.c 2024-03-24 23:15:58.000000000 
+0100
+++ new/libX11-1.8.9/modules/im/ximcp/imDefIm.c 2024-04-06 01:02:05.000000000 
+0200
@@ -430,7 +430,6 @@
        return False;
 
     im->private.proto.im_window = im_window;
-    im->private.proto.fabricated_serial = 0;
     return True;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/modules/im/ximcp/imDefLkup.c 
new/libX11-1.8.9/modules/im/ximcp/imDefLkup.c
--- old/libX11-1.8.8/modules/im/ximcp/imDefLkup.c       2024-03-24 
23:15:58.000000000 +0100
+++ new/libX11-1.8.9/modules/im/ximcp/imDefLkup.c       2024-04-06 
01:02:05.000000000 +0200
@@ -341,54 +341,6 @@
     return _XimForwardEventCore(ic, ev, sync);
 }
 
-Bool
-_XimFabricateSerial(
-    Xim                         im,
-    unsigned long       serial)
-{
-    if (!serial)
-       return False;
-    if (serial == im->private.proto.fabricated_serial) {
-       fprintf(stderr, "%s,%d: The key event is already fabricated.\n", 
__FILE__, __LINE__);
-       return False;
-    }
-    if (im->private.proto.fabricated_serial)
-       fprintf(stderr, "%s,%d: Tried to fabricate a wrong key event.\n", 
__FILE__, __LINE__);
-
-    MARK_FABRICATED(im);
-    im->private.proto.fabricated_serial = serial;
-    return True;
-}
-
-Bool
-_XimUnfabricateSerial(
-    Xim                         im,
-    unsigned long       serial)
-{
-    if (!serial)
-       return False;
-    if (!im->private.proto.fabricated_serial) {
-       fprintf(stderr, "%s,%d: The key event is already unfabricated.\n", 
__FILE__, __LINE__);
-       return False;
-    }
-    if (serial != im->private.proto.fabricated_serial)
-       fprintf(stderr, "%s,%d: Tried to unfabricate a wrong key event.\n", 
__FILE__, __LINE__);
-
-    im->private.proto.fabricated_serial = 0;
-    UNMARK_FABRICATED(im);
-    return True;
-}
-
-Bool
-_XimIsFabricatedSerial(
-    Xim                         im,
-    unsigned long       serial)
-{
-    if (!serial)
-       return False;
-    return (serial == im->private.proto.fabricated_serial);
-}
-
 static void
 _XimProcEvent(
     Display            *d,
@@ -403,7 +355,7 @@
     ev->xany.serial |= serial << 16;
     ev->xany.send_event = False;
     ev->xany.display = d;
-    _XimFabricateSerial((Xim)ic->core.im, ev->xany.serial);
+    MARK_FABRICATED(ic->core.im);
     return;
 }
 
@@ -640,47 +592,22 @@
 }
 
 static void
-_XimUnregRealCommitInfo(
-    Xic                        ic,
-    Bool               reverse)
+_XimUnregCommitInfo(
+    Xic                        ic)
 {
     XimCommitInfo      info;
-    XimCommitInfo      prev_info = NULL;
 
-    info = ic->private.proto.commit_info;
-    while (reverse && info) {
-       if (!info->next)
-           break;
-       prev_info = info;
-       info = info->next;
-    }
-    if (!info)
+    if (!(info = ic->private.proto.commit_info))
        return;
 
+
     Xfree(info->string);
     Xfree(info->keysym);
-    if (prev_info)
-       prev_info->next = info->next;
-    else
-       ic->private.proto.commit_info = info->next;
+    ic->private.proto.commit_info = info->next;
     Xfree(info);
     return;
 }
 
-static void
-_XimUnregCommitInfo(
-    Xic                        ic)
-{
-    _XimUnregRealCommitInfo(ic, False);
-}
-
-static void
-_XimUnregFirstCommitInfo(
-    Xic                        ic)
-{
-    _XimUnregRealCommitInfo(ic, True);
-}
-
 void
 _XimFreeCommitInfo(
     Xic                        ic)
@@ -690,19 +617,6 @@
     return;
 }
 
-static XimCommitInfo
-_XimFirstCommitInfo(
-    Xic                        ic)
-{
-    XimCommitInfo info = ic->private.proto.commit_info;
-    while (info) {
-       if (!info->next)
-           break;
-       info = info->next;
-    }
-    return info;
-}
-
 static Bool
 _XimProcKeySym(
     Xic                          ic,
@@ -790,6 +704,10 @@
 
     (void)_XimRespSyncReply(ic, flag);
 
+    if (ic->private.proto.registed_filter_event
+       & (KEYPRESS_MASK | KEYRELEASE_MASK))
+           MARK_FABRICATED(im);
+
     bzero(&ev, sizeof(ev));    /* uninitialized : found when running kterm 
under valgrind */
 
     ev.type = KeyPress;
@@ -801,10 +719,6 @@
 
     ev.time = 0L;
     ev.serial = LastKnownRequestProcessed(im->core.display);
-
-    if (ic->private.proto.registed_filter_event
-       & (KEYPRESS_MASK | KEYRELEASE_MASK))
-           _XimFabricateSerial(im, ev.serial);
     /* FIXME :
        I wish there were COMMENTs (!) about the data passed around.
     */
@@ -1097,7 +1011,7 @@
        state = &tmp_state;
 
     if ((ev->type == KeyPress) && (ev->keycode == 0)) { /* Filter function */
-       if (!(info = _XimFirstCommitInfo(ic))) {
+       if (!(info = ic->private.proto.commit_info)) {
            *state = XLookupNone;
            return 0;
        }
@@ -1113,7 +1027,7 @@
            else
                *state = XLookupKeySym;
        }
-       _XimUnregFirstCommitInfo(ic);
+       _XimUnregCommitInfo(ic);
 
     } else  if (ev->type == KeyPress) {
        ret = _XimLookupMBText(ic, ev, buffer, bytes, keysym, NULL);
@@ -1160,7 +1074,7 @@
        state = &tmp_state;
 
     if (ev->type == KeyPress && ev->keycode == 0) { /* Filter function */
-       if (!(info = _XimFirstCommitInfo(ic))) {
+       if (!(info = ic->private.proto.commit_info)) {
            *state = XLookupNone;
            return 0;
        }
@@ -1176,7 +1090,7 @@
            else
                *state = XLookupKeySym;
        }
-       _XimUnregFirstCommitInfo(ic);
+       _XimUnregCommitInfo(ic);
 
     } else if (ev->type == KeyPress) {
        ret = _XimLookupWCText(ic, ev, buffer, bytes, keysym, NULL);
@@ -1223,7 +1137,7 @@
        state = &tmp_state;
 
     if (ev->type == KeyPress && ev->keycode == 0) { /* Filter function */
-       if (!(info = _XimFirstCommitInfo(ic))) {
+       if (!(info = ic->private.proto.commit_info)) {
            *state = XLookupNone;
            return 0;
        }
@@ -1239,7 +1153,7 @@
            else
                *state = XLookupKeySym;
        }
-       _XimUnregFirstCommitInfo(ic);
+       _XimUnregCommitInfo(ic);
 
     } else if (ev->type == KeyPress) {
        ret = _XimLookupUTF8Text(ic, ev, buffer, bytes, keysym, NULL);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/src/xlibi18n/XimintP.h 
new/libX11-1.8.9/src/xlibi18n/XimintP.h
--- old/libX11-1.8.8/src/xlibi18n/XimintP.h     2024-03-24 23:15:58.000000000 
+0100
+++ new/libX11-1.8.9/src/xlibi18n/XimintP.h     2024-04-06 01:02:05.000000000 
+0200
@@ -149,8 +149,6 @@
     XimTransRegDispatcher       register_dispatcher;
     XimTransCallDispatcher      call_dispatcher;
     XPointer                    spec;
-
-    unsigned long                fabricated_serial;
 } XimProtoPrivateRec;
 
 /*
@@ -309,19 +307,4 @@
 #define XIM_MAXIMNAMELEN 64
 #define XIM_MAXLCNAMELEN 64
 
-Bool
-_XimFabricateSerial(
-    Xim                  im,
-    unsigned long        serial);
-
-Bool
-_XimUnfabricateSerial(
-    Xim                  im,
-    unsigned long        serial);
-
-Bool
-_XimIsFabricatedSerial(
-    Xim                  im,
-    unsigned long        serial);
-
 #endif /* _XIMINTP_H */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libX11-1.8.8/src/xlibi18n/lcFile.c 
new/libX11-1.8.9/src/xlibi18n/lcFile.c
--- old/libX11-1.8.8/src/xlibi18n/lcFile.c      2024-03-24 23:15:58.000000000 
+0100
+++ new/libX11-1.8.9/src/xlibi18n/lcFile.c      2024-04-06 01:02:05.000000000 
+0200
@@ -88,6 +88,40 @@
     return argc;
 }
 
+#ifdef WIN32
+/* this is parse_line but skips drive letters at the beginning of the entry */
+static int
+parse_line1(
+    char *line,
+    char **argv,
+    int argsize)
+{
+    int argc = 0;
+    char *p = line;
+
+    while (argc < argsize) {
+       while (isspace(*p)) {
+           ++p;
+       }
+       if (*p == '\0') {
+           break;
+       }
+       argv[argc++] = p;
+        if (isalpha(*p) && p[1] == ':') {
+            p+= 2; /* skip drive letters */
+        }
+       while (*p != ':' && *p != '\n' && *p != '\0') {
+           ++p;
+       }
+       if (*p == '\0') {
+           break;
+       }
+       *p++ = '\0';
+    }
+
+    return argc;
+}
+#endif   /* WIN32 */
 
 /* Splits a colon separated list of directories, and returns the constituent
    paths (without trailing slash). At most argsize constituents are stored

Reply via email to