diff options
author | Christian Tismer <tismer@stackless.com> | 2019-06-16 12:05:39 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2019-06-24 11:25:31 +0200 |
commit | 380c65e62de0e60da667dc0d87935171b91b9c6c (patch) | |
tree | 480c872f247316a66e446ba196a5bd1a339a0bcd /sources/shiboken2/libshiboken/bufferprocs_py37.cpp | |
parent | 992ff1f7925009b7ead6d6f005cafcf2e57ed44e (diff) |
Cleanup pointer whitespace everywhere
Among other files to fix, basewrapper.(cpp|h) was full of uncommon
pointer whitespace. After fixing that, I could not resist and fixed
also libshiboken, generators, and after acceptance also PySide.
Most of the time, this regex worked fine
(\w\w+)([*&]+)[ ]*(?![&*]*[/=])
replaced with
\1 \2
but everything was checked by hand.
I did not touch the shiboken tests which are quite hairy.
It turned out that inserting a space between a variable and asterisk
causes a crash of shiboken, if the same line contains "CONVERTTOCPP".
This was temporarily fixed by adding another space after it.
Example..
sources/pyside2/PySide2/glue/qtcore.cpp line 977
QByteArray * cppSelf = %CONVERTTOCPP[QByteArray *](obj);
//XXX /|\ omitting this space crashes shiboken!
cppgenerator.cpp was special, since it was modified to _generate_
correct pointer whitespace. This caused a few testcases to fail,
which had to be adjusted, again. This was difficult since some
internal names must end on "*" and generated code normally not.
Removing the last errors involved binary search on path sets...
Apply C++ 11 fixits to the changed code, where applicable.
Done-with: Friedemann.Kleint@qt.io
Task-number: PYSIDE-1037
Change-Id: I4ac070f52c5efb296c05d581c9d46e6f397a6c81
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Diffstat (limited to 'sources/shiboken2/libshiboken/bufferprocs_py37.cpp')
-rw-r--r-- | sources/shiboken2/libshiboken/bufferprocs_py37.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/sources/shiboken2/libshiboken/bufferprocs_py37.cpp b/sources/shiboken2/libshiboken/bufferprocs_py37.cpp index 84d670d21..ddb07390e 100644 --- a/sources/shiboken2/libshiboken/bufferprocs_py37.cpp +++ b/sources/shiboken2/libshiboken/bufferprocs_py37.cpp @@ -147,19 +147,18 @@ PyBuffer_IsContiguous(const Pep_buffer *view, char order) } -void* +void * PyBuffer_GetPointer(Pep_buffer *view, Py_ssize_t *indices) { - char* pointer; int i; - pointer = (char *)view->buf; + auto pointer = reinterpret_cast<char *>(view->buf); for (i = 0; i < view->ndim; i++) { pointer += view->strides[i]*indices[i]; if ((view->suboffsets != NULL) && (view->suboffsets[i] >= 0)) { - pointer = *((char**)pointer) + view->suboffsets[i]; + pointer = *reinterpret_cast<char **>(pointer) + view->suboffsets[i]; } } - return (void*)pointer; + return pointer; } @@ -221,7 +220,7 @@ PyBuffer_FromContiguous(Pep_buffer *view, void *buf, Py_ssize_t len, char fort) PyErr_NoMemory(); return -1; } - for (k=0; k<view->ndim;k++) { + for (k=0; k<view->ndim; k++) { indices[k] = 0; } |