##// END OF EJS Templates
util: introduce unpacker...
Matt Mackall -
r23789:94951db8 default
parent child Browse files
Show More
@@ -19,7 +19,7 b' import error, osutil, encoding'
19 19 import errno, shutil, sys, tempfile, traceback
20 20 import re as remod
21 21 import os, time, datetime, calendar, textwrap, signal, collections
22 import imp, socket, urllib
22 import imp, socket, urllib, struct
23 23 import gc
24 24
25 25 if os.name == 'nt':
@@ -229,6 +229,15 b' except NameError:'
229 229 import subprocess
230 230 closefds = os.name == 'posix'
231 231
232 def unpacker(fmt):
233 """create a struct unpacker for the specified format"""
234 try:
235 # 2.5+
236 return struct.Struct(fmt).unpack
237 except NameError:
238 # 2.4
239 return lambda buf: struct.unpack(fmt)
240
232 241 def popen2(cmd, env=None, newlines=False):
233 242 # Setting bufsize to -1 lets the system decide the buffer size.
234 243 # The default for bufsize is 0, meaning unbuffered. This leads to
General Comments 0
You need to be logged in to leave comments. Login now