]> git.lizzy.rs Git - minetest.git/blobdiff - src/httpfetch.cpp
Change lower limit of display_gamma to 1.0 (linear light)
[minetest.git] / src / httpfetch.cpp
index 981643f6cb8849f29e6a540c4ff36f6865d4a93b..c60e141fc087fbdcd40fc09d1ec2a437db1a88da 100644 (file)
@@ -33,11 +33,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #include "util/container.h"
 #include "util/thread.h"
 #include "version.h"
-#include "main.h"
 #include "settings.h"
 
 JMutex g_httpfetch_mutex;
-std::map<unsigned long, std::list<HTTPFetchResult> > g_httpfetch_results;
+std::map<unsigned long, std::queue<HTTPFetchResult> > g_httpfetch_results;
 
 HTTPFetchRequest::HTTPFetchRequest()
 {
@@ -48,7 +47,7 @@ HTTPFetchRequest::HTTPFetchRequest()
        connect_timeout = timeout;
        multipart = false;
 
-       useragent = std::string("Minetest/") + minetest_version_hash + " (" + porting::get_sysinfo() + ")";
+       useragent = std::string(PROJECT_NAME_C "/") + g_version_hash + " (" + porting::get_sysinfo() + ")";
 }
 
 
@@ -57,7 +56,7 @@ static void httpfetch_deliver_result(const HTTPFetchResult &fetch_result)
        unsigned long caller = fetch_result.caller;
        if (caller != HTTPFETCH_DISCARD) {
                JMutexAutoLock lock(g_httpfetch_mutex);
-               g_httpfetch_results[caller].push_back(fetch_result);
+               g_httpfetch_results[caller].push(fetch_result);
        }
 }
 
@@ -70,18 +69,18 @@ unsigned long httpfetch_caller_alloc()
        // Check each caller ID except HTTPFETCH_DISCARD
        const unsigned long discard = HTTPFETCH_DISCARD;
        for (unsigned long caller = discard + 1; caller != discard; ++caller) {
-               std::map<unsigned long, std::list<HTTPFetchResult> >::iterator
+               std::map<unsigned long, std::queue<HTTPFetchResult> >::iterator
                        it = g_httpfetch_results.find(caller);
                if (it == g_httpfetch_results.end()) {
-                       verbosestream<<"httpfetch_caller_alloc: allocating "
-                                       <<caller<<std::endl;
+                       verbosestream << "httpfetch_caller_alloc: allocating "
+                                       << caller << std::endl;
                        // Access element to create it
                        g_httpfetch_results[caller];
                        return caller;
                }
        }
 
-       assert("httpfetch_caller_alloc: ran out of caller IDs" == 0);
+       FATAL_ERROR("httpfetch_caller_alloc: ran out of caller IDs");
        return discard;
 }
 
@@ -102,19 +101,19 @@ bool httpfetch_async_get(unsigned long caller, HTTPFetchResult &fetch_result)
        JMutexAutoLock lock(g_httpfetch_mutex);
 
        // Check that caller exists
-       std::map<unsigned long, std::list<HTTPFetchResult> >::iterator
+       std::map<unsigned long, std::queue<HTTPFetchResult> >::iterator
                it = g_httpfetch_results.find(caller);
        if (it == g_httpfetch_results.end())
                return false;
 
        // Check that result queue is nonempty
-       std::list<HTTPFetchResult> &caller_results = it->second;
+       std::queue<HTTPFetchResult> &caller_results = it->second;
        if (caller_results.empty())
                return false;
 
        // Pop first result
        fetch_result = caller_results.front();
-       caller_results.pop_front();
+       caller_results.pop();
        return true;
 }
 
@@ -633,7 +632,7 @@ class CurlFetchThread : public JThread
                        return NULL;
                }
 
-               assert(m_all_ongoing.empty());
+               FATAL_ERROR_IF(!m_all_ongoing.empty(), "Expected empty");
 
                while (!StopRequested()) {
                        BEGIN_DEBUG_EXCEPTION_HANDLER
@@ -714,7 +713,7 @@ void httpfetch_init(int parallel_limit)
                        <<std::endl;
 
        CURLcode res = curl_global_init(CURL_GLOBAL_DEFAULT);
-       assert(res == CURLE_OK);
+       FATAL_ERROR_IF(res != CURLE_OK, "CURL init failed");
 
        g_httpfetch_thread = new CurlFetchThread(parallel_limit);
 }