diff options
| author | Felix Domke <tmbinc@elitedvb.net> | 2007-12-16 20:40:32 +0000 |
|---|---|---|
| committer | Felix Domke <tmbinc@elitedvb.net> | 2007-12-16 20:40:32 +0000 |
| commit | 4be8e8d55b25dbe77866f79c4a21a03eed6a6eae (patch) | |
| tree | 7798ab118e61e8919aac9df6107accf3ef3b929b /lib/python/Screens/PluginBrowser.py | |
| parent | f99c09422824f0167ba592e08932136812b4e77a (diff) | |
| download | enigma2-4be8e8d55b25dbe77866f79c4a21a03eed6a6eae.tar.gz enigma2-4be8e8d55b25dbe77866f79c4a21a03eed6a6eae.zip | |
patch by Pieter Grimmerink: fix partial lines returned from ipkg
Diffstat (limited to 'lib/python/Screens/PluginBrowser.py')
| -rw-r--r-- | lib/python/Screens/PluginBrowser.py | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/lib/python/Screens/PluginBrowser.py b/lib/python/Screens/PluginBrowser.py index fbb809d7..fbbc128d 100644 --- a/lib/python/Screens/PluginBrowser.py +++ b/lib/python/Screens/PluginBrowser.py @@ -91,7 +91,9 @@ class PluginDownloadBrowser(Screen): self["text"] = Label(_("Getting plugin information. Please wait...")) self.run = 0 - + + self.remainingdata = "" + self["actions"] = ActionMap(["WizardActions"], { "ok": self.go, @@ -142,6 +144,7 @@ class PluginDownloadBrowser(Screen): self.close() def runFinished(self, retval): + self.remainingdata = "" if self.run == 0: self.run = 1 if self.type == self.DOWNLOAD: @@ -157,7 +160,19 @@ class PluginDownloadBrowser(Screen): self["text"].setText("No new plugins found") def dataAvail(self, str): - for x in str.split('\n'): + #prepend any remaining data from the previous call + str = self.remainingdata + str + #split in lines + lines = str.split('\n') + #'str' should end with '\n', so when splitting, the last line should be empty. If this is not the case, we received an incomplete line + if len(lines[-1]): + #remember this data for next time + self.remainingdata = lines[-1] + lines = lines[0:-1] + else: + self.remainingdata = "" + + for x in lines: plugin = x.split(" - ") if len(plugin) == 3: if self.run == 1 and self.type == self.DOWNLOAD: |
