aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2/ApiExtractor/typesystem.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2017-09-14 09:59:27 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2017-09-15 08:34:33 +0000
commite4e1027d382eef3552ebb4c6ec6bc94ecb4068c0 (patch)
tree35f743bd523d38afadd68655a96458110c110aac /sources/shiboken2/ApiExtractor/typesystem.cpp
parent09d9cc162e89498d1e6424420ab288b4fba8ed6f (diff)
Typesystem parser: Look up external injected code in typesystem path
Make TypeDatabase::modifiedTypesystemFilepath() public and add parameter preventing it from stripping the path so that it can handle 'glue/snippet.cpp' correctly. This removes the need to run shiboken with the working directory set to the type system file path in order to find the external injected code snippets for documentation generation. Task-number: PYSIDE-363 Change-Id: Ic61cc1d1187e326e5255b29759a9d42e27ebd8d4 Reviewed-by: Christian Tismer <tismer@stackless.com>
Diffstat (limited to 'sources/shiboken2/ApiExtractor/typesystem.cpp')
-rw-r--r--sources/shiboken2/ApiExtractor/typesystem.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/sources/shiboken2/ApiExtractor/typesystem.cpp b/sources/shiboken2/ApiExtractor/typesystem.cpp
index 6ba609333..9c80a6c0b 100644
--- a/sources/shiboken2/ApiExtractor/typesystem.cpp
+++ b/sources/shiboken2/ApiExtractor/typesystem.cpp
@@ -1947,8 +1947,9 @@ bool Handler::startElement(const QStringRef &n, const QXmlStreamAttributes &atts
if (m_generate != TypeEntry::GenerateForSubclass &&
m_generate != TypeEntry::GenerateNothing &&
!file_name.isEmpty()) {
- if (QFile::exists(file_name)) {
- QFile codeFile(file_name);
+ const QString resolved = m_database->modifiedTypesystemFilepath(file_name, false);
+ if (QFile::exists(resolved)) {
+ QFile codeFile(resolved);
if (codeFile.open(QIODevice::Text | QIODevice::ReadOnly)) {
QString content = QLatin1String("// ========================================================================\n"
"// START of custom code block [file: ");