openlp-core team mailing list archive
-
openlp-core team
-
Mailing list archive
-
Message #10202
[Merge] lp:~j-corwin/openlp/bug-765368 into lp:openlp
Jonathan Corwin has proposed merging lp:~j-corwin/openlp/bug-765368 into lp:openlp.
Requested reviews:
OpenLP Core (openlp-core)
Related bugs:
Bug #759660 in OpenLP: "OpenLP uses 1.7 gig of ram then crashes"
https://bugs.launchpad.net/openlp/+bug/759660
Bug #765368 in OpenLP: "powerpoint end of slides crashes with traceback"
https://bugs.launchpad.net/openlp/+bug/765368
For more details, see:
https://code.launchpad.net/~j-corwin/openlp/bug-765368/+merge/64911
Prevent error if attempt to keep going off the end of a presentation.
Reduce memory usage by not resizing small thumbnails back up to full monitor size in the slidecontroller.
--
https://code.launchpad.net/~j-corwin/openlp/bug-765368/+merge/64911
Your team OpenLP Core is requested to review the proposed merge of lp:~j-corwin/openlp/bug-765368 into lp:openlp.
=== modified file 'openlp/core/ui/slidecontroller.py'
--- openlp/core/ui/slidecontroller.py 2011-06-12 16:02:52 +0000
+++ openlp/core/ui/slidecontroller.py 2011-06-16 22:14:27 +0000
@@ -625,9 +625,7 @@
label.setMargin(4)
label.setScaledContents(True)
if self.serviceItem.is_command():
- image = resize_image(frame[u'image'],
- self.parent().renderer.width,
- self.parent().renderer.height)
+ image = QtGui.QImage(frame[u'image'])
else:
# If current slide set background to image
if framenumber == slideno:
=== modified file 'openlp/plugins/presentations/lib/messagelistener.py'
--- openlp/plugins/presentations/lib/messagelistener.py 2011-06-12 16:02:52 +0000
+++ openlp/plugins/presentations/lib/messagelistener.py 2011-06-16 22:14:27 +0000
@@ -95,6 +95,8 @@
if self.is_live:
self.doc.start_presentation()
if self.doc.slidenumber > 1:
+ if self.doc.slidenumber > self.doc.get_slide_count():
+ self.doc.slidenumber = self.doc.get_slide_count()
self.doc.goto_slide(self.doc.slidenumber)
def slide(self, slide):
@@ -150,6 +152,11 @@
if self.doc.slidenumber < self.doc.get_slide_count():
self.doc.slidenumber = self.doc.slidenumber + 1
return
+ # The "End of slideshow" screen is after the last slide
+ # Note, we can't just stop on the last slide, since it may
+ # contain animations that need to be stepped through.
+ if self.doc.slidenumber > self.doc.get_slide_count():
+ return
self.activate()
self.doc.next_step()
self.doc.poll_slidenumber(self.is_live)
Follow ups