Skip to Content.
Sympa Menu

sm-commit - [SM-Commit] GIT changes to master grimoire by Treeve Jelbert (20eea2a113e932d708053a99d77815cc450529ef)

sm-commit AT lists.ibiblio.org

Subject: Source Mage code commit list

List archive

Chronological Thread  
  • From: Treeve Jelbert <scm AT sourcemage.org>
  • To: sm-commit AT lists.ibiblio.org
  • Subject: [SM-Commit] GIT changes to master grimoire by Treeve Jelbert (20eea2a113e932d708053a99d77815cc450529ef)
  • Date: Tue, 9 Feb 2016 12:28:06 +0000

GIT changes to master grimoire by Treeve Jelbert <treeve AT sourcemage.org>:


xorg-xserver/xorg-server/Add-hybrid-full-size-empty-clip-mode-to-SetRootClip.patch
| 138 ++++++++++
xorg-xserver/xorg-server/CONFIGURE
| 6
xorg-xserver/xorg-server/DETAILS
| 2
xorg-xserver/xorg-server/HISTORY
| 6
xorg-xserver/xorg-server/PRE_BUILD
| 4
xorg-xserver/xorg-server/UP_TRIGGERS
| 27 -
xorg-xserver/xorg-server/xwayland-fix-a-crash-on-output-removal.patch
| 12
7 files changed, 170 insertions(+), 25 deletions(-)

New commits:
commit 20eea2a113e932d708053a99d77815cc450529ef
Author: Treeve Jelbert <treeve AT sourcemage.org>
Commit: Treeve Jelbert <treeve AT sourcemage.org>

xorg-server - upstream patches

commit 68ae8a611614199a07c2a7a5252d9db79bc4e79f
Author: Treeve Jelbert <treeve AT sourcemage.org>
Commit: Treeve Jelbert <treeve AT sourcemage.org>

xorg-server - improve UP_TRIGGERS;
CONFIGURE: remove obsolete option

diff --git
a/xorg-xserver/xorg-server/Add-hybrid-full-size-empty-clip-mode-to-SetRootClip.patch

b/xorg-xserver/xorg-server/Add-hybrid-full-size-empty-clip-mode-to-SetRootClip.patch
new file mode 100644
index 0000000..8c39748
--- /dev/null
+++
b/xorg-xserver/xorg-server/Add-hybrid-full-size-empty-clip-mode-to-SetRootClip.patch
@@ -0,0 +1,138 @@
+diff --git a/dix/window.c b/dix/window.c
+index 25d29ec..9726ade 100644
+--- a/dix/window.c
++++ b/dix/window.c
+@@ -3647,7 +3647,7 @@ WindowParentHasDeviceCursor(WindowPtr pWin,
+ * all of the windows
+ */
+ void
+-SetRootClip(ScreenPtr pScreen, Bool enable)
++SetRootClip(ScreenPtr pScreen, int enable)
+ {
+ WindowPtr pWin = pScreen->root;
+ WindowPtr pChild;
+@@ -3655,6 +3655,7 @@ SetRootClip(ScreenPtr pScreen, Bool enable)
+ Bool anyMarked = FALSE;
+ WindowPtr pLayerWin;
+ BoxRec box;
++ enum RootClipMode mode = enable;
+
+ if (!pWin)
+ return;
+@@ -3684,18 +3685,23 @@ SetRootClip(ScreenPtr pScreen, Bool enable)
+ * that assume the root borderClip can't change well, normally
+ * it doesn't...)
+ */
+- if (enable) {
++ if (mode != ROOT_SIZE_NONE) {
++ pWin->drawable.width = pScreen->width;
++ pWin->drawable.height = pScreen->height;
++
+ box.x1 = 0;
+ box.y1 = 0;
+ box.x2 = pScreen->width;
+ box.y2 = pScreen->height;
++
+ RegionInit(&pWin->winSize, &box, 1);
+ RegionInit(&pWin->borderSize, &box, 1);
+- if (WasViewable)
+- RegionReset(&pWin->borderClip, &box);
+- pWin->drawable.width = pScreen->width;
+- pWin->drawable.height = pScreen->height;
+ RegionBreak(&pWin->clipList);
++
++ if (WasViewable && mode == ROOT_SIZE_SCREEN)
++ RegionReset(&pWin->borderClip, &box);
++ else
++ RegionEmpty(&pWin->borderClip);
+ }
+ else {
+ RegionEmpty(&pWin->borderClip);
+diff --git a/hw/xwayland/xwayland-glamor.c b/hw/xwayland/xwayland-glamor.c
+index 7f6fb9a..5557818 100644
+--- a/hw/xwayland/xwayland-glamor.c
++++ b/hw/xwayland/xwayland-glamor.c
+@@ -236,7 +236,7 @@ xwl_glamor_create_screen_resources(ScreenPtr screen)
+ if (xwl_screen->rootless) {
+ screen->devPrivate =
+ fbCreatePixmap(screen, 0, 0, screen->rootDepth, 0);
+- SetRootClip(screen, FALSE);
++ SetRootClip(screen, ROOT_SIZE_SCREEN_EMPTY);
+ }
+ else {
+ screen->devPrivate =
+diff --git a/hw/xwayland/xwayland-output.c b/hw/xwayland/xwayland-output.c
+index e9ec190..f5c7194 100644
+--- a/hw/xwayland/xwayland-output.c
++++ b/hw/xwayland/xwayland-output.c
+@@ -164,8 +164,7 @@ update_screen_size(struct xwl_output *xwl_output, int
width, int height)
+ struct xwl_screen *xwl_screen = xwl_output->xwl_screen;
+ double mmpd;
+
+- if (!xwl_screen->rootless)
+- SetRootClip(xwl_screen->screen, FALSE);
++ SetRootClip(xwl_screen->screen, FALSE);
+
+ xwl_screen->width = width;
+ xwl_screen->height = height;
+@@ -181,6 +180,11 @@ update_screen_size(struct xwl_output *xwl_output, int
width, int height)
+ xwl_screen->screen->mmHeight = height * mmpd;
+ }
+
++ if (xwl_screen->rootless)
++ SetRootClip(xwl_screen->screen, ROOT_SIZE_SCREEN_EMPTY);
++ else
++ SetRootClip(xwl_screen->screen, ROOT_SIZE_SCREEN);
++
+ if (xwl_screen->screen->root) {
+ xwl_screen->screen->root->drawable.width = width;
+ xwl_screen->screen->root->drawable.height = height;
+@@ -188,9 +192,6 @@ update_screen_size(struct xwl_output *xwl_output, int
width, int height)
+ }
+
+ update_desktop_dimensions();
+-
+- if (!xwl_screen->rootless)
+- SetRootClip(xwl_screen->screen, TRUE);
+ }
+
+ static void
+diff --git a/hw/xwayland/xwayland-shm.c b/hw/xwayland/xwayland-shm.c
+index 7072be4..2fbe74d 100644
+--- a/hw/xwayland/xwayland-shm.c
++++ b/hw/xwayland/xwayland-shm.c
+@@ -282,7 +282,7 @@ xwl_shm_create_screen_resources(ScreenPtr screen)
+ if (xwl_screen->rootless) {
+ screen->devPrivate =
+ fbCreatePixmap(screen, 0, 0, screen->rootDepth, 0);
+- SetRootClip(screen, FALSE);
++ SetRootClip(screen, ROOT_SIZE_SCREEN_EMPTY);
+ }
+ else
+ screen->devPrivate =
+diff --git a/include/window.h b/include/window.h
+index f13ed51..67c9f10 100644
+--- a/include/window.h
++++ b/include/window.h
+@@ -72,6 +72,12 @@ struct _Cursor;
+ typedef struct _BackingStore *BackingStorePtr;
+ typedef struct _Window *WindowPtr;
+
++enum RootClipMode {
++ ROOT_SIZE_NONE = 0, /**< resize the root window to 0x0 */
++ ROOT_SIZE_SCREEN = 1, /**< resize the root window to fit screen */
++ ROOT_SIZE_SCREEN_EMPTY = 2, /**< as above, but empty clip */
++};
++
+ typedef int (*VisitWindowProcPtr) (WindowPtr pWin,
+ void *data);
+
+@@ -221,7 +227,7 @@ extern _X_EXPORT RegionPtr CreateBoundingShape(WindowPtr
/* pWin */ );
+
+ extern _X_EXPORT RegionPtr CreateClipShape(WindowPtr /* pWin */ );
+
+-extern _X_EXPORT void SetRootClip(ScreenPtr pScreen, Bool enable);
++extern _X_EXPORT void SetRootClip(ScreenPtr pScreen, int enable);
+ extern _X_EXPORT void PrintWindowTree(void);
+ extern _X_EXPORT void PrintPassiveGrabs(void);
+
diff --git a/xorg-xserver/xorg-server/CONFIGURE
b/xorg-xserver/xorg-server/CONFIGURE
index 0dc52a2..887a701 100755
--- a/xorg-xserver/xorg-server/CONFIGURE
+++ b/xorg-xserver/xorg-server/CONFIGURE
@@ -25,12 +25,6 @@ config_query_option XORG_SERVER_OPTS
\
"--disable-glamor"
&&

config_query_option XORG_SERVER_OPTS \
- "Install libxf86config?" \
- n \
- "--enable-install-libxf86config" \
- "--disable-install-libxf86config"
&&
-
-config_query_option XORG_SERVER_OPTS \
"Build XRes extension?" \
y \
"--enable-xres" \
diff --git a/xorg-xserver/xorg-server/DETAILS
b/xorg-xserver/xorg-server/DETAILS
index e86208d..e0b753e 100755
--- a/xorg-xserver/xorg-server/DETAILS
+++ b/xorg-xserver/xorg-server/DETAILS
@@ -9,7 +9,7 @@
ENTERED=20051125
LICENSE[0]=XCL
SECURITY_PATCH=10
- PATCHLEVEL=0
+ PATCHLEVEL=1
SHORT="X servers (including Xorg, Xprt, Xvfb, Xnest & Xdmx)"
cat << EOF
X servers (including Xorg, Xprt, Xvfb, Xnest & Xdmx), the core of the X
diff --git a/xorg-xserver/xorg-server/HISTORY
b/xorg-xserver/xorg-server/HISTORY
index 626e0d0..c64bb12 100644
--- a/xorg-xserver/xorg-server/HISTORY
+++ b/xorg-xserver/xorg-server/HISTORY
@@ -1,5 +1,11 @@
2016-02-09 Treeve Jelbert <treeve AT sourcemage.org>
* DETAILS: 1.18.1
+ PATCHLEVEL=1
+ * UP_TRIGGERS: improve it
+ * CONFIGURE: remove obsolete option
+ * PRE_BUILD: apply upstream patches
+ * xwayland-fix-a-crash-on-output-removal.patch: added
+ * Add-hybrid-full-size-empty-clip-mode-to-SetRootClip.patch: added

2015-11-10 Treeve Jelbert <treeve AT sourcemage.org>
* DETAILS: 1.18.0
diff --git a/xorg-xserver/xorg-server/PRE_BUILD
b/xorg-xserver/xorg-server/PRE_BUILD
index 710034f..98db5d4 100755
--- a/xorg-xserver/xorg-server/PRE_BUILD
+++ b/xorg-xserver/xorg-server/PRE_BUILD
@@ -2,4 +2,6 @@ default_pre_build &&
# required to build
glselect mesa &&
cd "$SOURCE_DIRECTORY" &&
-patch -p1 < $SPELL_DIRECTORY/gl_select.patch
+patch -p1 < $SPELL_DIRECTORY/gl_select.patch &&
+patch -p1 < $SPELL_DIRECTORY/xwayland-fix-a-crash-on-output-removal.patch &&
+patch -p1 <
$SPELL_DIRECTORY/Add-hybrid-full-size-empty-clip-mode-to-SetRootClip.patch
diff --git a/xorg-xserver/xorg-server/UP_TRIGGERS
b/xorg-xserver/xorg-server/UP_TRIGGERS
index d5b34ef..6f9bf38 100755
--- a/xorg-xserver/xorg-server/UP_TRIGGERS
+++ b/xorg-xserver/xorg-server/UP_TRIGGERS
@@ -1,18 +1,11 @@
-local each
-local epicfail
-
-case "$(installed_version $SPELL)" in
- 1.4.2|1.3.0.0|1.2.99.903|1.2.99.902|1.2.0|1.1.1|1.0.1|1.0.0|0.99.4)
epicfail=y;;
- *) epicfail=n;;
-esac &&
-
-for each in synaptics $(gaze -q -g "$(gaze -q grimoires | tr " " "\n" | \
- grep -Ex "test|stable(-rc|-[0-9]+\.[0-9]+)?")" section xorg-driver);do
- if spell_ok $each; then
- if [[ $epicfail == y ]]; then
- up_trigger $each cast_self
- else
- up_trigger $each check_self
- fi
+local OLD_SPELL_VERSION=""
+if spell_ok $SPELL; then
+ OLD_SPELL_VERSION="$(installed_version $SPELL)"
+ if test "${VERSION:0:3}" != "${OLD_SPELL_VERSION:0:3}"; then
+ message "This is a possibly incompatible update of $SPELL..."
+ message "Figuring out what spells need to be recast, this may take a
while."
+ for each in $(show_up_depends $SPELL 1); do
+ up_trigger $each check_self
+ done
fi
-done
+fi
diff --git
a/xorg-xserver/xorg-server/xwayland-fix-a-crash-on-output-removal.patch
b/xorg-xserver/xorg-server/xwayland-fix-a-crash-on-output-removal.patch
new file mode 100644
index 0000000..612189c
--- /dev/null
+++ b/xorg-xserver/xorg-server/xwayland-fix-a-crash-on-output-removal.patch
@@ -0,0 +1,12 @@
+diff --git a/hw/xwayland/xwayland-output.c b/hw/xwayland/xwayland-output.c
+index e9ec190..abb73ab 100644
+--- a/hw/xwayland/xwayland-output.c
++++ b/hw/xwayland/xwayland-output.c
+@@ -298,6 +298,7 @@ xwl_output_destroy(struct xwl_output *xwl_output)
+
+ wl_output_destroy(xwl_output->output);
+ xorg_list_del(&xwl_output->link);
++ RRCrtcDestroy(xwl_output->randr_crtc);
+ RROutputDestroy(xwl_output->randr_output);
+
+ xorg_list_for_each_entry(it, &xwl_screen->output_list, link)



  • [SM-Commit] GIT changes to master grimoire by Treeve Jelbert (20eea2a113e932d708053a99d77815cc450529ef), Treeve Jelbert, 02/09/2016

Archive powered by MHonArc 2.6.24.

Top of Page