From bae2b7f046bbcf591067046e27fbfcb93b765d42 Mon Sep 17 00:00:00 2001 From: Robin Dunn Date: Tue, 25 Apr 2017 17:43:22 -0700 Subject: [PATCH] Acquire the GIL in the value type Get() methods --- etg/colour.py | 1 + etg/gbsizer.py | 2 ++ etg/gdicmn.py | 4 ++++ etg/geometry.py | 2 ++ etg/grid.py | 1 + etg/position.py | 1 + etg/richtextbuffer.py | 1 + 7 files changed, 12 insertions(+) diff --git a/etg/colour.py b/etg/colour.py index 339c616f..8433d2d0 100644 --- a/etg/colour.py +++ b/etg/colour.py @@ -154,6 +154,7 @@ def run(): blue = self->Blue(); alpha = self->Alpha(); } + wxPyThreadBlocker blocker; if (includeAlpha) return sipBuildResult(0, "(iiii)", red, green, blue, alpha); else diff --git a/etg/gbsizer.py b/etg/gbsizer.py index 23c66307..d547e374 100644 --- a/etg/gbsizer.py +++ b/etg/gbsizer.py @@ -41,6 +41,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxGBPosition') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->GetRow(), self->GetCol()); """, pyArgsString="() -> (row, col)", @@ -85,6 +86,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxGBSpan') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->GetRowspan(), self->GetColspan()); """, pyArgsString="() -> (rowspan, colspan)", diff --git a/etg/gdicmn.py b/etg/gdicmn.py index 10dfe976..448c1aa2 100644 --- a/etg/gdicmn.py +++ b/etg/gdicmn.py @@ -104,6 +104,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxPoint') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->x, self->y); """, pyArgsString="() -> (x,y)", @@ -178,6 +179,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxSize') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->GetWidth(), self->GetHeight()); """, pyArgsString="() -> (width, height)", @@ -257,6 +259,7 @@ def run(): c.convertFromPyObject = tools.convertFourIntegersTemplate('wxRect') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(iiii)", self->x, self->y, self->width, self->height); """, @@ -312,6 +315,7 @@ def run(): c.convertFromPyObject = tools.convertTwoDoublesTemplate('wxRealPoint') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(dd)", self->x, self->y); """, pyArgsString="() -> (x, y)", diff --git a/etg/geometry.py b/etg/geometry.py index f198c07d..682b249c 100644 --- a/etg/geometry.py +++ b/etg/geometry.py @@ -59,6 +59,7 @@ def run(): c.convertFromPyObject = tools.convertTwoDoublesTemplate('wxPoint2DDouble') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(dd)", self->m_x, self->m_y); """, briefDoc="""\ @@ -105,6 +106,7 @@ def run(): c.convertFromPyObject = tools.convertFourDoublesTemplate('wxRect2DDouble') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(dddd)", self->m_x, self->m_y, self->m_width, self->m_height); """, diff --git a/etg/grid.py b/etg/grid.py index 9f523991..21c6734a 100644 --- a/etg/grid.py +++ b/etg/grid.py @@ -98,6 +98,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxGridCellCoords') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->GetRow(), self->GetCol()); """, pyArgsString="() -> (row,col)", diff --git a/etg/position.py b/etg/position.py index dc2b5519..bb54c095 100644 --- a/etg/position.py +++ b/etg/position.py @@ -37,6 +37,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxPosition') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->GetRow(), self->GetCol()); """, pyArgsString="() -> (row,col)", diff --git a/etg/richtextbuffer.py b/etg/richtextbuffer.py index ee231369..9c72810b 100644 --- a/etg/richtextbuffer.py +++ b/etg/richtextbuffer.py @@ -166,6 +166,7 @@ def run(): c.convertFromPyObject = tools.convertTwoIntegersTemplate('wxRichTextRange') c.addCppMethod('PyObject*', 'Get', '()', """\ + wxPyThreadBlocker blocker; return sipBuildResult(0, "(ii)", self->GetStart(), self->GetEnd()); """, pyArgsString="() -> (start, end)",