aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch')
-rw-r--r--meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch b/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
new file mode 100644
index 0000000000..435e74e863
--- /dev/null
+++ b/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
@@ -0,0 +1,27 @@
+From: Scott Anderson <o2e@saaworld.com>
+Subject: ipkg-utils: Make arfile.py handle six digit UIDs
+
+ Essentially, the problem is that arfile.py is splitting the ar header with
+ white-space instead of fixed-width fields, so two fields would get treated
+ as a single field. This makes things better than before as it now honors
+ the fixed field widths.
+
+Upsteam-status: Pending (there is no upstream after openmoko imploded)
+
+--- ipkg-utils/arfile.py.orig 2010-09-29 13:38:15.000000000 -0700
++++ ipkg-utils/arfile.py 2010-10-01 16:06:00.000000000 -0700
+@@ -74,7 +74,12 @@
+ if l == "\n":
+ l = self.f.readline()
+ if not l: break
+ l = l.replace('`', '')
+- descriptor = l.split()
++ # Field lengths from /usr/include/ar.h:
++ ar_field_lens = [ 16, 12, 6, 6, 8, 10, 2 ]
++ descriptor = []
++ for field_len in ar_field_lens:
++ descriptor.append(l[:field_len].strip())
++ l = l[field_len:]
+ # print descriptor
+ size = int(descriptor[5])
+ memberName = descriptor[0][:-1]