aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/opkg-utils/opkg-utils/arfile_header_split.patch
blob: b679f8b970f408dba7f89151727ae606e21c36db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
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.
    
Upstream-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]