[OE-core] [PATCH] oepydevshell-internal.py: decode only when readdata is valid

changqing.li at windriver.com changqing.li at windriver.com
Tue Nov 13 09:04:38 UTC 2018


From: Changqing Li <changqing.li at windriver.com>

fix below problem:
pydevshell raises exception when maximize the python shell window.
when click maximize, rlist of select return ready object, but the
pty.read is None, so throw exception of 'NoneType' object has no
attribute 'decode', change to only decode when readdata is valid.

[YOCTO #11875]

Signed-off-by: Changqing Li <changqing.li at windriver.com>
---
 scripts/oepydevshell-internal.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/scripts/oepydevshell-internal.py b/scripts/oepydevshell-internal.py
index 04621ae..2d1bc77 100755
--- a/scripts/oepydevshell-internal.py
+++ b/scripts/oepydevshell-internal.py
@@ -63,7 +63,10 @@ try:
             (ready, _, _) = select.select([pty, sys.stdin], writers , [], 0)
             try:
                 if pty in ready:
-                    i = i + pty.read().decode('utf-8')
+                    readdata=pty.read()
+                    if readdata == None:
+                        continue
+                    i = i + readdata.decode('utf-8')
                 if i:
                     # Write a page at a time to avoid overflowing output 
                     # d.keys() is a good way to do that
-- 
2.7.4



More information about the Openembedded-core mailing list