summaryrefslogtreecommitdiffstats
path: root/src/main.cpp
diff options
context:
space:
mode:
authorJon A. Cruz <jon@joncruz.org>2008-09-14 04:59:18 +0000
committerjoncruz <joncruz@users.sourceforge.net>2008-09-14 04:59:18 +0000
commit6e1aa033d253b6769d47e4491f198054605c0dab (patch)
treeac63a37021a848f6bc0f23a8e75867d012477b2b /src/main.cpp
parentApplied cleaned-up patch for 'server' or 'shell' mode. (diff)
downloadinkscape-6e1aa033d253b6769d47e4491f198054605c0dab.tar.gz
inkscape-6e1aa033d253b6769d47e4491f198054605c0dab.zip
Handle optional bbox behavior. Fixes warning.
(bzr r6808)
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/main.cpp b/src/main.cpp
index da1d812c3..ba9ffde6a 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1177,7 +1177,14 @@ sp_do_export_png(SPDocument *doc)
// write object bbox to area
sp_document_ensure_up_to_date (doc);
- sp_item_invoke_bbox((SPItem *) o_area, &area, sp_item_i2r_affine((SPItem *) o_area), TRUE);
+ boost::optional<NR::Rect> areaMaybe;
+ sp_item_invoke_bbox((SPItem *) o_area, areaMaybe, sp_item_i2r_affine((SPItem *) o_area), TRUE);
+ if (areaMaybe) {
+ area = NRRect(areaMaybe);
+ } else {
+ g_warning("Unable to determine a valid bounding box. Nothing exported.");
+ return;
+ }
} else {
g_warning("Object with id=\"%s\" was not found in the document. Nothing exported.", sp_export_id);
return;
@@ -1229,8 +1236,9 @@ sp_do_export_png(SPDocument *doc)
}
// default dpi
- if (dpi == 0.0)
+ if (dpi == 0.0) {
dpi = PX_PER_IN;
+ }
unsigned long int width = 0;
unsigned long int height = 0;