Set NOPROGRESS for pycurl just as same as default operation in pycurl module itself.
If set NOPROGRESS with 0 for pycurl, it causes dead lock issue of Python GIL when
call smart library by python gui just like pygtk.

Upstream-Status: Pending

Signed-off-by: Kai Kang <kai.kang@windriver.com>
---
diff -u smart-1.4.1/smart.orig/fetcher.py smart-1.4.1/smart/fetcher.py
--- smart-1.4.1/smart.orig/fetcher.py	2014-07-15 16:42:19.240437080 +0800
+++ smart-1.4.1/smart/fetcher.py	2014-07-15 17:02:37.812470289 +0800
@@ -1720,7 +1720,7 @@
                         handle.setopt(pycurl.OPT_FILETIME, 1)
                         handle.setopt(pycurl.LOW_SPEED_LIMIT, 1)
                         handle.setopt(pycurl.LOW_SPEED_TIME, SOCKETTIMEOUT)
-                        handle.setopt(pycurl.NOPROGRESS, 0)
+                        handle.setopt(pycurl.NOPROGRESS, 1)
                         handle.setopt(pycurl.PROGRESSFUNCTION, progress)
                         handle.setopt(pycurl.WRITEDATA, local)
                         handle.setopt(pycurl.FOLLOWLOCATION, 1)
