summaryrefslogtreecommitdiff
blob: 48a1f0a333a09f31e237ad4a06d497ad2ac08cd4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
diff --git a/cmake_modules/Findpqxx.cmake b/cmake_modules/Findpqxx.cmake
index 9c53550..691ec0e 100644
--- a/cmake_modules/Findpqxx.cmake
+++ b/cmake_modules/Findpqxx.cmake
@@ -1,16 +1,33 @@
-FIND_PATH(PQXX_INCLUDE_DIR pqxx/pqxx PATHS)
-MARK_AS_ADVANCED(PQXX_INCLUDE_DIR)
+if (NOT WIN32)
+	find_package(PkgConfig)
+	if (PKG_CONFIG_FOUND)
+		pkg_check_modules(PQXX libpqxx)
+		if (PQXX_FOUND)
+			if (PQXX_VERSION STRGREATER "7")
+				message(STATUS "libpqxx version ${PQXX_VERSION}, requesting c++17")
+				set (CMAKE_CXX_STANDARD 17)
+			endif()
+		endif()
+	endif()
+else()
 
-FIND_LIBRARY(PQXX_LIBRARY pqxx )
-MARK_AS_ADVANCED(PQXX_LIBRARY)
+	FIND_PATH(PQXX_INCLUDE_DIR pqxx/pqxx PATHS)
+	MARK_AS_ADVANCED(PQXX_INCLUDE_DIR)
 
-FIND_LIBRARY(PQ_LIBRARY pq )
-MARK_AS_ADVANCED(PQ_LIBRARY)
+	FIND_LIBRARY(PQXX_LIBRARIES pqxx )
+	MARK_AS_ADVANCED(PQXX_LIBRARIES)
 
-if(PQXX_LIBRARY AND PQ_LIBRARY AND PQXX_INCLUDE_DIR)
-	set( PQXX_FOUND 1 )
-	message( STATUS "Found pqxx: ${PQXX_LIBRARY}, ${PQ_LIBRARY}, ${PQXX_INCLUDE_DIR}")
-else()
-	message(STATUS "Could NOT find pqxx and pq library")
-endif()
+	FIND_LIBRARY(PQ_LIBRARY pq )
+	MARK_AS_ADVANCED(PQ_LIBRARY)
 
+	if(PQXX_LIBRARY AND PQ_LIBRARY AND PQXX_INCLUDE_DIR)
+		set( PQXX_FOUND 1 )
+		message( STATUS "Found pqxx: ${PQXX_LIBRARIES}, ${PQ_LIBRARY}, ${PQXX_INCLUDE_DIR}")
+		if (PQXX_VERSION STRGREATER "7")
+			message(STATUS "libpqxx version ${PQXX_VERSION}, requesting c++17")
+			set (CMAKE_CXX_STANDARD 17)
+		endif()
+	else()
+		message(STATUS "Could NOT find pqxx and pq library")
+	endif()
+endif()
diff --git a/libtransport/CMakeLists.txt b/libtransport/CMakeLists.txt
index 8892241..2b5a0f9 100644
--- a/libtransport/CMakeLists.txt
+++ b/libtransport/CMakeLists.txt
@@ -48,9 +48,9 @@ find_package(CURL)
 
 if(WIN32)
 	include_directories("${CMAKE_SOURCE_DIR}/msvc-deps/sqlite3")
-	target_link_libraries(transport transport-plugin ${PQXX_LIBRARY} ${CURL_LIBRARIES} ${PQ_LIBRARY} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${PROTOBUF_LIBRARY} ${JSONCPP_LIBRARY} psapi.lib bcrypt.lib)
+	target_link_libraries(transport transport-plugin ${PQXX_LIBRARIES} ${CURL_LIBRARIES} ${PQ_LIBRARY} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${PROTOBUF_LIBRARY} ${JSONCPP_LIBRARY} psapi.lib bcrypt.lib)
 else()
-	target_link_libraries(transport transport-plugin ${PQXX_LIBRARY} ${CURL_LIBRARIES} ${PQ_LIBRARY} ${SQLITE3_LIBRARIES} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${POPT_LIBRARY} ${PROTOBUF_LIBRARY} ${JSONCPP_LIBRARY})
+	target_link_libraries(transport transport-plugin ${PQXX_LIBRARIES} ${CURL_LIBRARIES} ${PQ_LIBRARY} ${SQLITE3_LIBRARIES} ${MYSQL_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES} ${POPT_LIBRARY} ${PROTOBUF_LIBRARY} ${JSONCPP_LIBRARY})
 endif()
 
 set_target_properties(transport PROPERTIES
diff --git a/libtransport/NetworkPluginServer.cpp b/libtransport/NetworkPluginServer.cpp
index 31cce95..f5305aa 100644
--- a/libtransport/NetworkPluginServer.cpp
+++ b/libtransport/NetworkPluginServer.cpp
@@ -1904,7 +1904,7 @@ NetworkPluginServer::wrapIncomingMedia(SWIFTEN_SHRPTR_NAMESPACE::shared_ptr<Swif
     //Doesn't handle: unquoted src, escaped "'>s, quotes in quotes ("quote: 'text' end quote")
     static boost::regex image_expr("<img\\s+[^>]*src\\s*=\\s*[\"']([^\"']+)[\"'][^>]*>");
 
-    bool matchCount = 0;
+    int matchCount = 0;
     std::string firstUrl;
 
     std::string::const_iterator xhtml_pos = xhtml.begin();