|
|
4308ea6 |
From 8386824b825351b200df88e7a71f57d1652f08ea Mon Sep 17 00:00:00 2001
|
|
|
4308ea6 |
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
|
|
4308ea6 |
Date: Sun, 29 Jul 2018 17:34:45 -0400
|
|
|
4308ea6 |
Subject: [PATCH 3/3] Try to fix bool snap lifetimes.
|
|
|
4308ea6 |
|
|
|
4308ea6 |
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
|
|
|
4308ea6 |
---
|
|
|
4308ea6 |
src/_mplcairo.cpp | 4 ++--
|
|
|
4308ea6 |
src/_mplcairo.h | 2 +-
|
|
|
4308ea6 |
2 files changed, 3 insertions(+), 3 deletions(-)
|
|
|
4308ea6 |
|
|
|
4308ea6 |
diff --git a/src/_mplcairo.cpp b/src/_mplcairo.cpp
|
|
|
4308ea6 |
index 5bb34e7..15897f6 100644
|
|
|
4308ea6 |
--- a/src/_mplcairo.cpp
|
|
|
4308ea6 |
+++ b/src/_mplcairo.cpp
|
|
|
4308ea6 |
@@ -542,12 +542,12 @@ void GraphicsContextRenderer::set_linewidth(double lw)
|
|
|
4308ea6 |
cairo_set_miter_limit(cr_, cairo_get_line_width(cr_));
|
|
|
4308ea6 |
}
|
|
|
4308ea6 |
|
|
|
4308ea6 |
-void GraphicsContextRenderer::set_snap(std::optional<bool> snap)
|
|
|
4308ea6 |
+void GraphicsContextRenderer::set_snap(py::object snap)
|
|
|
4308ea6 |
{
|
|
|
4308ea6 |
// NOTE: We treat None (snap if only vertical or horizontal lines) as True.
|
|
|
4308ea6 |
// NOTE: It appears that even when rcParams["path.snap"] is False, this is
|
|
|
4308ea6 |
// sometimes set to True.
|
|
|
4308ea6 |
- get_additional_state().snap = snap.value_or(true);
|
|
|
4308ea6 |
+ get_additional_state().snap = snap.is(py::none{}) ? true : snap.cast<bool>();
|
|
|
4308ea6 |
}
|
|
|
4308ea6 |
|
|
|
4308ea6 |
void GraphicsContextRenderer::set_url(std::optional<std::string> url)
|
|
|
4308ea6 |
diff --git a/src/_mplcairo.h b/src/_mplcairo.h
|
|
|
4308ea6 |
index 934fd9a..1693a22 100644
|
|
|
4308ea6 |
--- a/src/_mplcairo.h
|
|
|
4308ea6 |
+++ b/src/_mplcairo.h
|
|
|
4308ea6 |
@@ -75,7 +75,7 @@ class GraphicsContextRenderer {
|
|
|
4308ea6 |
void set_hatch_color(py::object hatch);
|
|
|
4308ea6 |
void set_joinstyle(std::string js);
|
|
|
4308ea6 |
void set_linewidth(double lw);
|
|
|
4308ea6 |
- void set_snap(std::optional<bool> snap);
|
|
|
4308ea6 |
+ void set_snap(py::object snap);
|
|
|
4308ea6 |
void set_url(std::optional<std::string> url);
|
|
|
4308ea6 |
|
|
|
4308ea6 |
AdditionalState const& get_additional_state() const;
|
|
|
4308ea6 |
--
|
|
|
4308ea6 |
2.17.1
|
|
|
4308ea6 |
|