[oe-commits] Richard Purdie : metadata_scm: Avoid crashing on new svn version layouts

git at git.openembedded.org git at git.openembedded.org
Wed Dec 11 14:18:46 UTC 2013


Module: openembedded-core.git
Branch: dylan
Commit: 9fdea109d65c338913caa22e3a09f0408c361536
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=9fdea109d65c338913caa22e3a09f0408c361536

Author: Richard Purdie <richard.purdie at linuxfoundation.org>
Date:   Fri Nov 22 15:07:34 2013 +0000

metadata_scm: Avoid crashing on new svn version layouts

This avoids crashing on newer svn layouts where the entries files
don't contain three lines. If someone wants to fix this to
get the right version on newer subversion checkouts, patches
welcome but this at least stops things crashing.

[YOCTO #5363]

(From OE-Core master rev: e850c53d4d8cb877a704a23f9ce02d6185ba3ffa)

Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>

---

 meta/classes/metadata_scm.bbclass | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/meta/classes/metadata_scm.bbclass b/meta/classes/metadata_scm.bbclass
index 502d400..cc8abe6 100644
--- a/meta/classes/metadata_scm.bbclass
+++ b/meta/classes/metadata_scm.bbclass
@@ -52,10 +52,13 @@ def base_get_metadata_monotone_revision(path, d):
     return monotone_revision
 
 def base_get_metadata_svn_revision(path, d):
+    # This only works with older subversion. For newer versions
+    # this function will need to be fixed by someone interested
     revision = "<unknown>"
     try:
-        revision = file( "%s/.svn/entries" % path ).readlines()[3].strip()
-    except IOError:
+        with open("%s/.svn/entries" % path) as f:
+            revision = f.readlines()[3].strip()
+    except IOError, IndexError:
         pass
     return revision
 



More information about the Openembedded-commits mailing list