Commit 2409ed7d authored by Thiago Macieira's avatar Thiago Macieira
Browse files

Fix placement of QT_{BEGIN,END}_NAMESPACE in qfunctions_winrt.h


Those functions weren't getting properly namespaced. Even if we're
testing WinRT namespaced builds, it wouldn't catch this mistake: those
functions would simply all be in the global namespace. I guess we don't
have a "namespace cleanliness" test.

Change-Id: I2d3d09dc66dad476563dbf51c171683be155ebfd
Reviewed-by: default avatarMaurice Kalinowski <maurice.kalinowski@theqtcompany.com>
Reviewed-by: default avatarAndrew Knight <andrew.knight@theqtcompany.com>
Showing with 17 additions and 12 deletions
......@@ -37,7 +37,7 @@
#include "qbytearray.h"
#include "qhash.h"
QT_USE_NAMESPACE
QT_BEGIN_NAMESPACE
// Environment ------------------------------------------------------
inline QHash<QByteArray, QByteArray> &qt_app_environment()
......@@ -94,4 +94,6 @@ void qt_winrt__tzset()
{
}
QT_END_NAMESPACE
#endif // Q_OS_WINRT
......@@ -64,15 +64,14 @@ QT_BEGIN_NAMESPACE
#ifdef QT_BUILD_CORE_LIB
#endif
QT_END_NAMESPACE
// Environment ------------------------------------------------------
errno_t qt_winrt_getenv_s(size_t*, char*, size_t, const char*);
errno_t qt_winrt__putenv_s(const char*, const char*);
void qt_winrt_tzset();
void qt_winrt__tzset();
QT_END_NAMESPACE
// As Windows Runtime lacks some standard functions used in Qt, these got
// reimplemented. Other projects do this as well. Inline functions are used
// that there is a central place to disable functions for newer versions if
......@@ -85,42 +84,42 @@ void qt_winrt__tzset();
#define generate_inline_return_func0(funcname, returntype) \
inline returntype funcname() \
{ \
return qt_winrt_##funcname(); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(); \
}
#define generate_inline_return_func1(funcname, returntype, param1) \
inline returntype funcname(param1 p1) \
{ \
return qt_winrt_##funcname(p1); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1); \
}
#define generate_inline_return_func2(funcname, returntype, param1, param2) \
inline returntype funcname(param1 p1, param2 p2) \
{ \
return qt_winrt_##funcname(p1, p2); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1, p2); \
}
#define generate_inline_return_func3(funcname, returntype, param1, param2, param3) \
inline returntype funcname(param1 p1, param2 p2, param3 p3) \
{ \
return qt_winrt_##funcname(p1, p2, p3); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1, p2, p3); \
}
#define generate_inline_return_func4(funcname, returntype, param1, param2, param3, param4) \
inline returntype funcname(param1 p1, param2 p2, param3 p3, param4 p4) \
{ \
return qt_winrt_##funcname(p1, p2, p3, p4); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1, p2, p3, p4); \
}
#define generate_inline_return_func5(funcname, returntype, param1, param2, param3, param4, param5) \
inline returntype funcname(param1 p1, param2 p2, param3 p3, param4 p4, param5 p5) \
{ \
return qt_winrt_##funcname(p1, p2, p3, p4, p5); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1, p2, p3, p4, p5); \
}
#define generate_inline_return_func6(funcname, returntype, param1, param2, param3, param4, param5, param6) \
inline returntype funcname(param1 p1, param2 p2, param3 p3, param4 p4, param5 p5, param6 p6) \
{ \
return qt_winrt_##funcname(p1, p2, p3, p4, p5, p6); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1, p2, p3, p4, p5, p6); \
}
#define generate_inline_return_func7(funcname, returntype, param1, param2, param3, param4, param5, param6, param7) \
inline returntype funcname(param1 p1, param2 p2, param3 p3, param4 p4, param5 p5, param6 p6, param7 p7) \
{ \
return qt_winrt_##funcname(p1, p2, p3, p4, p5, p6, p7); \
return QT_PREPEND_NAMESPACE(qt_winrt_##funcname)(p1, p2, p3, p4, p5, p6, p7); \
}
typedef unsigned (__stdcall *StartAdressExFunc)(void *);
......@@ -132,6 +131,8 @@ generate_inline_return_func2(_putenv_s, errno_t, const char *, const char *)
generate_inline_return_func0(tzset, void)
generate_inline_return_func0(_tzset, void)
QT_BEGIN_NAMESPACE
namespace Microsoft { namespace WRL { template <typename T> class ComPtr; } }
namespace QWinRTFunctions {
......@@ -205,6 +206,8 @@ static inline HRESULT await(const Microsoft::WRL::ComPtr<T> &asyncOp, U *results
} // QWinRTFunctions
QT_END_NAMESPACE
#endif // Q_OS_WINRT
#endif // Q_OS_WIN
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment