Well, sorry for the long post. %) I think I found the bug.

Anyway, is it possible that…
http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/wily/qtcreator-plugin-ubuntu/wily/view/head:/src/ubuntu/ubuntudevice.cpp

In line 209 or 216, the condition is true because my device is not an
Ubuntu device. So m_errorCount is incremented and detect() is called.
detect() is an alias for detectDeviceVersion().

So detectDeviceVersion() calls startProcess() again, i.e. the script is
instantly invoked again after a failure.

processFinished() then has the check for "maximum of 3 attempts" (line
165), but if the exit code of the process is 0, the m_errorCount is
reset to 0. (BTW, there's also a Q_UNUSED macro in processFinished()
that can probably be removed?) And…

$ /usr/share/qtcreator/ubuntu/scripts/device_version 007692f760d6239b
/system/bin/sh: chroot: not found
/system/bin/sh: chroot: not found
/system/bin/sh: chroot: not found
/system/bin/sh: chroot: not found
$ echo $?
0

So in my case, the m_errorCount is probably set to 0 after each
device_version execution. And that probably explains the "infinite
loop"-style behaviour I observed.

It's interesting to see that my system hardly manages to execute the script 
more than once per second. I added
echo $(date) >> /tmp/log
to see how often it's called. I guess that spawning a new shell process (bash 
in my case) is rather slow. :-)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1456627

Title:
  Almost unusuable while non-Ubuntu device connected through adb

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/qtcreator-plugin-ubuntu/+bug/1456627/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to