1
0

Accepting request 90845 from X11:XOrg

- u_record-fix-sig11.patch
  * If you aren't using the Record extension (and you aren't), you
    can work around the bug by moving the code which accesses the
    (non-existant) request buffer inside the loop looking at the
    recording contexts (of which there should be none). 
    (bnc #728964, fdo #36930)

OBS-URL: https://build.opensuse.org/request/show/90845
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xorg-x11-server?expand=0&rev=224
This commit is contained in:
Stephan Kulow 2011-11-10 15:08:25 +00:00 committed by Git OBS Bridge
commit baeab03b44
3 changed files with 48 additions and 0 deletions

36
u_record-fix-sig11.patch Normal file
View File

@ -0,0 +1,36 @@
Date: Mon, 07 Nov 2011 22:09:34 -0800
From: Keith Packard <keithp@keithp.com>
Subject: Re: X server SIGSEGV?
If you aren't using the Record extension (and you aren't), you can work
around the bug by moving the code which accesses the (non-existant)
request buffer inside the loop looking at the recording contexts (of
which there should be none):
diff --git a/record/record.c b/record/record.c
index 68311ac..9e36103 100644
--- a/record/record.c
+++ b/record/record.c
@@ -603,12 +603,10 @@ RecordAReply(CallbackListPtr *pcbl, pointer nulldata, pointer calldata)
RecordContextPtr pContext;
RecordClientsAndProtocolPtr pRCAP;
int eci;
- int majorop;
ReplyInfoRec *pri = (ReplyInfoRec *)calldata;
ClientPtr client = pri->client;
REQUEST(xReq);
- majorop = stuff->reqType;
for (eci = 0; eci < numEnabledContexts; eci++)
{
pContext = ppAllContexts[eci];
@@ -616,6 +614,7 @@ RecordAReply(CallbackListPtr *pcbl, pointer nulldata, pointer calldata)
NULL);
if (pRCAP)
{
+ int majorop = stuff->reqType;
if (pContext->continuedReply)
{
RecordAProtocolElement(pContext, client, XRecordFromServer,
I'll see if I can't get someone to fix this for real...

View File

@ -1,3 +1,13 @@
-------------------------------------------------------------------
Wed Nov 9 17:40:42 UTC 2011 - sndirsch@suse.com
- u_record-fix-sig11.patch
* If you aren't using the Record extension (and you aren't), you
can work around the bug by moving the code which accesses the
(non-existant) request buffer inside the loop looking at the
recording contexts (of which there should be none).
(bnc #728964, fdo #36930)
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Oct 18 18:38:41 UTC 2011 - eich@suse.com Tue Oct 18 18:38:41 UTC 2011 - eich@suse.com

View File

@ -94,6 +94,7 @@ Patch213: xorg-server-xdmcp.patch
Patch220: Use-external-tool-for-creating-backtraces-on-crashes.patch Patch220: Use-external-tool-for-creating-backtraces-on-crashes.patch
Patch222: sync-fix.patch Patch222: sync-fix.patch
Patch223: U_Don-t-call-deleted-Block-WakeupHandler.patch Patch223: U_Don-t-call-deleted-Block-WakeupHandler.patch
Patch224: u_record-fix-sig11.patch
%description %description
This package contains the X.Org Server. This package contains the X.Org Server.
@ -202,6 +203,7 @@ popd
#%patch220 -p1 #%patch220 -p1
%patch222 -p1 %patch222 -p1
%patch223 -p2 %patch223 -p2
%patch224 -p1
%build %build
pushd xorg-docs-* pushd xorg-docs-*