diff options
| author | Patrick Storz <eduard.braun2@gmx.de> | 2019-06-14 23:54:41 +0000 |
|---|---|---|
| committer | Patrick Storz <eduard.braun2@gmx.de> | 2019-06-14 23:54:41 +0000 |
| commit | 7b7f70fd9f7ff0d4901ea7f5ae6490eedb2710dd (patch) | |
| tree | 3e0b85cd3d25a69fd093aa492363cf5f1d85513b /src/ui/widget/page-sizer.cpp | |
| parent | Fix crash after deleting a grouped connection (diff) | |
| download | inkscape-7b7f70fd9f7ff0d4901ea7f5ae6490eedb2710dd.tar.gz inkscape-7b7f70fd9f7ff0d4901ea7f5ae6490eedb2710dd.zip | |
PageSizer: Do not require portrait page sizes
Lift needless expectation that all pages are defined as portrait.
Fixes assertion errors that were triggered for the landscape paper
formats in the list and prevented proper page size lookup.
Diffstat (limited to 'src/ui/widget/page-sizer.cpp')
| -rw-r--r-- | src/ui/widget/page-sizer.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/ui/widget/page-sizer.cpp b/src/ui/widget/page-sizer.cpp index 5a7a2edb2..64315402c 100644 --- a/src/ui/widget/page-sizer.cpp +++ b/src/ui/widget/page-sizer.cpp @@ -429,8 +429,6 @@ PageSizer::find_paper_size (Inkscape::Util::Quantity w, Inkscape::Util::Quantity std::swap(h,w); } - g_return_val_if_fail(w <= h, _paperSizeListStore->children().end()); - std::map<Glib::ustring, PaperSize>::const_iterator iter; for (iter = _paperSizeTable.begin() ; iter != _paperSizeTable.end() ; ++iter) { @@ -438,7 +436,10 @@ PageSizer::find_paper_size (Inkscape::Util::Quantity w, Inkscape::Util::Quantity Inkscape::Util::Quantity smallX (paper.smaller, paper.unit); Inkscape::Util::Quantity largeX (paper.larger, paper.unit); - g_return_val_if_fail(smallX.quantity < largeX.quantity + 0.001, _paperSizeListStore->children().end()); + // account for landscape formats (e.g. business cards) + if (largeX < smallX) { + std::swap(largeX, smallX); + } if ( are_near(w, smallX, 0.1) && are_near(h, largeX, 0.1) ) { Gtk::ListStore::iterator p = _paperSizeListStore->children().begin(); |
