diff options
Diffstat (limited to 'wx+')
-rw-r--r-- | wx+/grid.cpp | 3 | ||||
-rw-r--r-- | wx+/image_tools.cpp | 2 | ||||
-rw-r--r-- | wx+/popup_dlg_generated.cpp | 2 | ||||
-rw-r--r-- | wx+/popup_dlg_generated.h | 2 | ||||
-rw-r--r-- | wx+/zlib_wrap.h | 19 |
5 files changed, 11 insertions, 17 deletions
diff --git a/wx+/grid.cpp b/wx+/grid.cpp index 003e9a0e..248a82ef 100644 --- a/wx+/grid.cpp +++ b/wx+/grid.cpp @@ -235,7 +235,7 @@ void GridData::drawColumnLabelText(wxDC& dc, const wxRect& rect, const wxString& CornerWin RowLabelWin ColLabelWin MainWin */ -class Grid::SubWindow : public wxWindow +class Grid::SubWindow : public wxWindow { public: SubWindow(Grid& parent) : @@ -863,6 +863,7 @@ public: ColLabelWin& colLabelWin) : SubWindow(parent), rowLabelWin_(rowLabelWin), colLabelWin_(colLabelWin), + cursorRow(0), selectionAnchor(0), gridUpdatePending(false) { diff --git a/wx+/image_tools.cpp b/wx+/image_tools.cpp index 97fe3660..f45f3b6f 100644 --- a/wx+/image_tools.cpp +++ b/wx+/image_tools.cpp @@ -156,7 +156,9 @@ wxImage zen::createImageFromText(const wxString& text, const wxFont& font, const dc.SetTextBackground(*wxWHITE); // dc.SetFont(font); + assert(!contains(text, L"&")); //accelerator keys not supported here; see also getTextExtent() wxString textFmt = replaceCpy(text, L"&", L"", false); + //for some reason wxDC::DrawText messes up "weak" bidi characters even when wxLayout_RightToLeft is set! (--> arrows in hebrew/arabic) //=> use mark characters instead: const wchar_t rtlMark = L'\u200F'; diff --git a/wx+/popup_dlg_generated.cpp b/wx+/popup_dlg_generated.cpp index 31eed451..f823ed5e 100644 --- a/wx+/popup_dlg_generated.cpp +++ b/wx+/popup_dlg_generated.cpp @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////// -// C++ code generated with wxFormBuilder (version Feb 26 2014) +// C++ code generated with wxFormBuilder (version Jun 5 2014) // http://www.wxformbuilder.org/ // // PLEASE DO "NOT" EDIT THIS FILE! diff --git a/wx+/popup_dlg_generated.h b/wx+/popup_dlg_generated.h index cc5a2ad7..ad1bc51c 100644 --- a/wx+/popup_dlg_generated.h +++ b/wx+/popup_dlg_generated.h @@ -1,5 +1,5 @@ /////////////////////////////////////////////////////////////////////////// -// C++ code generated with wxFormBuilder (version Feb 26 2014) +// C++ code generated with wxFormBuilder (version Jun 5 2014) // http://www.wxformbuilder.org/ // // PLEASE DO "NOT" EDIT THIS FILE! diff --git a/wx+/zlib_wrap.h b/wx+/zlib_wrap.h index c6545c9d..4cdc96b3 100644 --- a/wx+/zlib_wrap.h +++ b/wx+/zlib_wrap.h @@ -4,8 +4,8 @@ // * Copyright (C) Zenju (zenju AT gmx DOT de) - All Rights Reserved * // ************************************************************************** -#ifndef SIMPLE_H_INCLUDED_18134135134135345489 -#define SIMPLE_H_INCLUDED_18134135134135345489 +#ifndef ZLIB_H_INCLUDED_428597064566 +#define ZLIB_H_INCLUDED_428597064566 #include <zen/serialize.h> @@ -33,15 +33,6 @@ BinContainer decompress(const BinContainer& stream); //throw ZlibIntern - - - - - - - - - //######################## implementation ########################## namespace impl { @@ -94,13 +85,13 @@ BinContainer decompress(const BinContainer& stream) //throw ZlibInternalError std::copy(&*stream.begin(), &*stream.begin() + sizeof(uncompressedSize), reinterpret_cast<char*>(&uncompressedSize)); - try - { //attention: contOut MUST NOT be empty! Else it will pass a nullptr to zlib_decompress() => Z_STREAM_ERROR although "uncompressedSize == 0"!!! //secondary bug: don't dereference iterator into empty container! if (uncompressedSize == 0) //cannot be 0: compress() directly maps empty -> empty container skipping zlib! throw ZlibInternalError(); + try + { contOut.resize(static_cast<size_t>(uncompressedSize)); //throw std::bad_alloc } catch (std::bad_alloc&) //most likely due to data corruption! @@ -119,4 +110,4 @@ BinContainer decompress(const BinContainer& stream) //throw ZlibInternalError } } -#endif //SIMPLE_H_INCLUDED_18134135134135345489 +#endif //ZLIB_H_INCLUDED_428597064566 |