diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index c14632a0a..3d2cefe60 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -324,13 +324,19 @@ IF(WITH_QT5) ENDIF() # freetype is needed since Qt 5.5 - IF(UNIX) - SET(FREETYPE_LIB "${QT_LIBRARY_DIR}/libqtfreetype.a") - ELSEIF(WIN32) - SET(FREETYPE_LIB "${QT_LIBRARY_DIR}/qtfreetype.lib") - ENDIF() - IF(EXISTS ${FREETYPE_LIB}) - SET(QT_LIBRARIES ${QT_LIBRARIES} ${FREETYPE_LIB}) + FIND_PACKAGE(FreeType) + + IF(FREETYPE_FOUND) + SET(QT_LIBRARIES ${QT_LIBRARIES} ${FREETYPE_LIBRARIES}) + ELSE() + IF(UNIX) + SET(FREETYPE_LIB "${QT_LIBRARY_DIR}/libqtfreetype.a") + ELSEIF(WIN32) + SET(FREETYPE_LIB "${QT_LIBRARY_DIR}/qtfreetype.lib") + ENDIF() + IF(EXISTS ${FREETYPE_LIB}) + SET(QT_LIBRARIES ${QT_LIBRARIES} ${FREETYPE_LIB}) + ENDIF() ENDIF() ADD_QT_PLUGIN(accessible qtaccessiblewidgets) @@ -344,7 +350,8 @@ IF(WITH_QT5) IF(WIN32) SET(QT_LIBRARIES ${QT_LIBRARIES} ${WINSDK_LIBRARY_DIR}/Crypt32.lib - ${WINSDK_LIBRARY_DIR}/WS2_32.Lib) + ${WINSDK_LIBRARY_DIR}/WS2_32.Lib + ${WINSDK_LIBRARY_DIR}/IPHlpApi.Lib) ENDIF() # Core diff --git a/code/CMakeModules/FindLuabind.cmake b/code/CMakeModules/FindLuabind.cmake index 64fd5e1cf..c21d64e4f 100644 --- a/code/CMakeModules/FindLuabind.cmake +++ b/code/CMakeModules/FindLuabind.cmake @@ -124,7 +124,7 @@ IF(WITH_LUA51) IF(WITH_STLPORT) LIST(APPEND LIBRARY_NAME_RELEASE luabind_stlport_lua51) LIST(APPEND LIBRARY_NAME_DEBUG luabind_stlport_lua51d) - ENDIF(WITH_STLPORT) + ENDIF() LIST(APPEND LIBRARY_NAME_RELEASE luabind_lua51) LIST(APPEND LIBRARY_NAME_DEBUG luabind_lua51d) @@ -134,7 +134,7 @@ IF(WITH_LUA50) IF(WITH_STLPORT) LIST(APPEND LIBRARY_NAME_RELEASE luabind_stlport_lua50) LIST(APPEND LIBRARY_NAME_DEBUG luabind_stlport_lua50d) - ENDIF(WITH_STLPORT) + ENDIF() LIST(APPEND LIBRARY_NAME_RELEASE luabind_lua50) LIST(APPEND LIBRARY_NAME_DEBUG luabind_lua50d) @@ -195,7 +195,7 @@ IF(LUABIND_INCLUDE_DIR AND Boost_INCLUDE_DIR) SET(LUABIND_FOUND TRUE) SET(LUABIND_LIBRARIES ${LUABIND_LIBRARY_DEBUG}) ENDIF(LUABIND_LIBRARY_RELEASE AND LUABIND_LIBRARY_DEBUG) -ENDIF(LUABIND_INCLUDE_DIR AND Boost_INCLUDE_DIR) +ENDIF() IF(LUABIND_FOUND) SET(LUABIND_INCLUDE_DIR ${LUABIND_INCLUDE_DIR} ${Boost_INCLUDE_DIR}) @@ -203,17 +203,17 @@ IF(LUABIND_FOUND) FIND_FILE(LUABIND_VERSION_FILE luabind/version.hpp PATHS ${LUABIND_INCLUDE_DIR}) IF(LUABIND_VERSION_FILE) SET(LUABIND_DEFINITIONS "-DHAVE_LUABIND_VERSION") - ENDIF(LUABIND_VERSION_FILE) + ENDIF() FIND_CORRECT_LUA_VERSION() IF(NOT Luabind_FIND_QUIETLY) MESSAGE(STATUS "Found Luabind: ${LUABIND_LIBRARIES}") ENDIF(NOT Luabind_FIND_QUIETLY) -ELSE(LUABIND_FOUND) +ELSE() IF(NOT Luabind_FIND_QUIETLY) MESSAGE(STATUS "Warning: Unable to find Luabind!") - ENDIF(NOT Luabind_FIND_QUIETLY) + ENDIF() ENDIF(LUABIND_FOUND) MARK_AS_ADVANCED(LUABIND_LIBRARY_RELEASE LUABIND_LIBRARY_DEBUG Boost_LIB_DIAGNOSTIC_DEFINITIONS) diff --git a/code/CMakeModules/nel.cmake b/code/CMakeModules/nel.cmake index 3995dcbf8..51ffaf950 100644 --- a/code/CMakeModules/nel.cmake +++ b/code/CMakeModules/nel.cmake @@ -533,31 +533,31 @@ MACRO(NL_SETUP_BUILD) # without inlining it's unusable, use custom optimizations again SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}") ELSEIF(MSVC12) - ADD_PLATFORM_FLAGS("/Gy- /MP") + ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000") # /Ox is working with VC++ 2013, but custom optimizations don't exist SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}") # without inlining it's unusable, use custom optimizations again SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}") ELSEIF(MSVC11) - ADD_PLATFORM_FLAGS("/Gy- /MP") + ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000") # /Ox is working with VC++ 2012, but custom optimizations don't exist SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}") # without inlining it's unusable, use custom optimizations again SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}") ELSEIF(MSVC10) - ADD_PLATFORM_FLAGS("/Gy- /MP") + ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000") # /Ox is working with VC++ 2010, but custom optimizations don't exist SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}") # without inlining it's unusable, use custom optimizations again SET(DEBUG_CFLAGS "/Od /Ob1 /GF- ${DEBUG_CFLAGS}") ELSEIF(MSVC90) - ADD_PLATFORM_FLAGS("/Gy- /MP") + ADD_PLATFORM_FLAGS("/Gy- /MP /Zm1000") # don't use a /O[012x] flag if you want custom optimizations SET(RELEASE_CFLAGS "/Ob2 /Oi /Ot /Oy /GT /GF /GS- ${RELEASE_CFLAGS}") # without inlining it's unusable, use custom optimizations again SET(DEBUG_CFLAGS "/Ob1 /GF- ${DEBUG_CFLAGS}") ELSEIF(MSVC80) - ADD_PLATFORM_FLAGS("/Gy- /Wp64") + ADD_PLATFORM_FLAGS("/Gy- /Wp64 /Zm1000") # don't use a /O[012x] flag if you want custom optimizations SET(RELEASE_CFLAGS "/Ox /GF /GS- ${RELEASE_CFLAGS}") # without inlining it's unusable, use custom optimizations again @@ -566,7 +566,7 @@ MACRO(NL_SETUP_BUILD) MESSAGE(FATAL_ERROR "Can't determine compiler version ${MSVC_VERSION}") ENDIF(MSVC14) - ADD_PLATFORM_FLAGS("/D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /Zm1000 /wd4250") + ADD_PLATFORM_FLAGS("/D_CRT_SECURE_NO_DEPRECATE /D_CRT_SECURE_NO_WARNINGS /D_CRT_NONSTDC_NO_WARNINGS /DWIN32 /D_WINDOWS /wd4250") IF(TARGET_X64) # Fix a bug with Intellisense diff --git a/code/nel/src/3d/driver/direct3d/driver_direct3d_vertex.cpp b/code/nel/src/3d/driver/direct3d/driver_direct3d_vertex.cpp index ad5bb04b9..2b7fa8fa9 100644 --- a/code/nel/src/3d/driver/direct3d/driver_direct3d_vertex.cpp +++ b/code/nel/src/3d/driver/direct3d/driver_direct3d_vertex.cpp @@ -125,7 +125,7 @@ uint8 *CVBDrvInfosD3D::lock (uint begin, uint end, bool readOnly) } else { - nlinfo("Buffer %s at %x is Locked", (*it)->VertexBufferPtr->getName().c_str(), (int) *it); + nlinfo("Buffer %s at %p is Locked", (*it)->VertexBufferPtr->getName().c_str(), *it); } } } diff --git a/code/nel/src/gui/group_html.cpp b/code/nel/src/gui/group_html.cpp index 2c225b3ce..30dd3ec3f 100644 --- a/code/nel/src/gui/group_html.cpp +++ b/code/nel/src/gui/group_html.cpp @@ -50,8 +50,8 @@ using namespace std; using namespace NLMISC; -// Default timeout to connect a server -#define DEFAULT_RYZOM_CONNECTION_TIMEOUT (30.0) +// Default maximum time the request is allowed to take +#define DEFAULT_RYZOM_CONNECTION_TIMEOUT (300.0) // Allow up to 10 redirects, then give up #define DEFAULT_RYZOM_REDIRECT_LIMIT (10) // @@ -1166,7 +1166,7 @@ namespace NLGUI pos = toLower(content).find("url="); if (pos != string::npos) - _RefreshUrl = content.substr(pos + 4); + _RefreshUrl = getAbsoluteUrl(content.substr(pos + 4)); } _NextRefreshTime += timeSec; diff --git a/code/nel/src/gui/url_parser.cpp b/code/nel/src/gui/url_parser.cpp index 68d4f8496..7369289f2 100644 --- a/code/nel/src/gui/url_parser.cpp +++ b/code/nel/src/gui/url_parser.cpp @@ -78,7 +78,7 @@ namespace NLGUI pos = uri.find("?"); if (pos != npos) { - query = uri.substr(pos + 1); + query = uri.substr(pos); uri = uri.substr(0, pos); } @@ -210,7 +210,9 @@ namespace NLGUI result += path; if (!query.empty()) - result += "?" + query; + if (query.find_first_of("?") != 0) + result += "?"; + result += query; if (!hash.empty()) result += "#" + hash; diff --git a/code/nel/src/gui/widget_manager.cpp b/code/nel/src/gui/widget_manager.cpp index 37a115965..f866594c9 100644 --- a/code/nel/src/gui/widget_manager.cpp +++ b/code/nel/src/gui/widget_manager.cpp @@ -1258,7 +1258,7 @@ namespace NLGUI getWindowForActiveMasterGroup(newCtrl->getContextHelpWindowName()); uint32 _ScreenH, _ScreenW; - CViewRenderer::getInstance()->getScreenSize( _ScreenH, _ScreenW ); + CViewRenderer::getInstance()->getScreenSize( _ScreenW, _ScreenH ); if(ttPosRef==Hotspot_TTAuto || ttParentRef==Hotspot_TTAuto) { diff --git a/code/nel/src/logic/logic_state.cpp b/code/nel/src/logic/logic_state.cpp index 3259a5ebb..9e943c7ce 100644 --- a/code/nel/src/logic/logic_state.cpp +++ b/code/nel/src/logic/logic_state.cpp @@ -15,6 +15,7 @@ // along with this program. If not, see . +#include "stdlogic.h" #include "nel/logic/logic_state.h" #include "nel/logic/logic_state_machine.h" diff --git a/code/nel/src/misc/cmd_args.cpp b/code/nel/src/misc/cmd_args.cpp index 65aae5769..d9370b831 100644 --- a/code/nel/src/misc/cmd_args.cpp +++ b/code/nel/src/misc/cmd_args.cpp @@ -220,6 +220,11 @@ bool CCmdArgs::parse(int argc, char **argv) for(sint i = 0; i < argc; ++i) { +#ifdef NL_OS_MAC + // get rid of -psn_* arguments under OS X + if (strncmp(argv[i], "-psn_", 5) == 0) continue; +#endif + args.push_back(argv[i]); } @@ -245,7 +250,7 @@ bool CCmdArgs::parse(const std::vector &argv) uint argc = argv.size(); // process each argument - for (sint i = 1; i < argc; i++) + for (uint i = 1; i < argc; i++) { std::string name = argv[i]; diff --git a/code/nel/src/sound/sound_bank.cpp b/code/nel/src/sound/sound_bank.cpp index 6421e722b..59330f3f8 100644 --- a/code/nel/src/sound/sound_bank.cpp +++ b/code/nel/src/sound/sound_bank.cpp @@ -363,7 +363,7 @@ CSound* CSoundBank::getSound(const NLMISC::CSheetId &sheetId) if (sheetId.getShortId() >= _Sounds.size()) { std::string sheetName = sheetId.toString(); - nlwarning("NLSOUND: Sound sheet id '%s' exceeds loaded sound sheets", sheetName.c_str()); + nldebug("NLSOUND: Sound sheet id '%s' exceeds loaded sound sheets", sheetName.c_str()); return NULL; } diff --git a/code/ryzom/client/data/gamedev/interfaces_v3/appzone.xml b/code/ryzom/client/data/gamedev/interfaces_v3/appzone.xml index c6f08c3b2..51bc04178 100644 --- a/code/ryzom/client/data/gamedev/interfaces_v3/appzone.xml +++ b/code/ryzom/client/data/gamedev/interfaces_v3/appzone.xml @@ -212,7 +212,6 @@ background_bitmap_view="" home="" browse_next_time="false" - timeout="5" form_text_area_group="edit_box_widget_multiline"> + + + + + + + + + @@ -44,6 +53,83 @@ onclick_l="proc" params_l="inv_left_click_on_slot" auto_grayed="false" /> + + + + +