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

changqing.li at windriver.com changqing.li at windriver.com
Wed Nov 14 09:46:03 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 | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/scripts/oepydevshell-internal.py b/scripts/oepydevshell-internal.py
index 04621ae..2f7d5d4 100755
--- a/scripts/oepydevshell-internal.py
+++ b/scripts/oepydevshell-internal.py
@@ -63,7 +63,9 @@ 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:
+                        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