[oe-commits] [openembedded-core] 40/43: dirsize: python3: fix TypeError: unorderable types

git at git.openembedded.org git at git.openembedded.org
Thu Jun 2 10:52:04 UTC 2016


rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 391cd33720e7d7e8e261193199272739293ad881
Author: Ed Bartosh <ed.bartosh at linux.intel.com>
AuthorDate: Thu Jun 2 13:12:59 2016 +0300

    dirsize: python3: fix TypeError: unorderable types
    
    Python 3 ignores the __cmp__() method and doesn't have cmp() builtin
    function. This caused sorted() call to raise
        TypeError: unorderable types: Record() < Record()
    
    Removing __cmp__ method and implementing __lt__ should solve the
    problem as __lt__ is the only method needed for sort[ed] to work.
    
    Signed-off-by: Ed Bartosh <ed.bartosh at linux.intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 scripts/tiny/dirsize.py | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/scripts/tiny/dirsize.py b/scripts/tiny/dirsize.py
index 5329b86..0b4fbd1 100755
--- a/scripts/tiny/dirsize.py
+++ b/scripts/tiny/dirsize.py
@@ -52,20 +52,16 @@ class Record:
         self.size = 0
         self.records = []
 
-    def __cmp__(this, that):
+    def __lt__(this, that):
         if that is None:
-            return 1
+            return False
         if not isinstance(that, Record):
             raise TypeError
         if len(this.records) > 0 and len(that.records) == 0:
-            return -1
-        if len(this.records) == 0 and len(that.records) > 0:
-            return 1
-        if this.size < that.size:
-            return -1
+            return False
         if this.size > that.size:
-            return 1
-        return 0
+            return False
+        return True
 
     def show(self, minsize):
         total = 0

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list