Skip to content

Commit 5e849a5

Browse files
committed
Fix parsexbug to work after rq optimizations.
1 parent e681dde commit 5e849a5

2 files changed

Lines changed: 12 additions & 4 deletions

File tree

‎Xlib/protocol/rq.py‎

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# $Id: rq.py,v 1.10 2001-01-06 17:58:06 petli Exp $
1+
# $Id: rq.py,v 1.11 2001-02-19 11:16:10 petli Exp $
22
#
33
# Xlib.protocol.rq -- structure primitives for request, events and errors
44
#
@@ -404,7 +404,7 @@ def parse_binary_value(self, data, display, length, format):
404404
else:
405405
slen = length
406406

407-
return struct.unpack('>' + 'H' * length, data[:length]), buffer(data, slen)
407+
return struct.unpack('>' + 'H' * length, data[:length * 2]), buffer(data, slen)
408408

409409

410410

@@ -760,7 +760,10 @@ def pack_value(self, value):
760760

761761
return value._binary, None, None
762762

763-
763+
def parse_binary_value(self, data, display, length, format):
764+
raise RuntimeError('Implement me!!!')
765+
766+
764767
#
765768
# Objects usable for List and FixedList fields.
766769
# Struct is also usable.

‎utils/parsexbug.py‎

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,15 @@
55
import pprint
66
import struct
77

8+
89
# Change path so we find Xlib
910
sys.path.insert(1, os.path.join(sys.path[0], '..'))
1011

12+
def dummy_buffer(str, x, y = sys.maxint):
13+
return str[x:y]
14+
15+
__builtins__.buffer = dummy_buffer
16+
1117
from Xlib.protocol import display, request, rq, event
1218
from Xlib import error
1319

@@ -92,7 +98,6 @@ def __getslice__(self, i, j):
9298

9399
return self.data[i:j]
94100

95-
96101
class DummyDisplay:
97102
def get_resource_class(self, name):
98103
return None

0 commit comments

Comments
 (0)