]> git.tdb.fi Git - libs/net.git/blobdiff - source/http/client.cpp
Implement an asynchronous name resolver class
[libs/net.git] / source / http / client.cpp
index 0729544a7ce0686754f721e8e6dee3e30cd7c40e..80815e0c9f6c33a5ced29e65cb6c82674c8b8b97 100644 (file)
@@ -1,4 +1,3 @@
-#include <msp/core/except.h>
 #include <msp/core/refptr.h>
 #include <msp/net/resolve.h>
 #include <msp/time/units.h>
@@ -38,7 +37,7 @@ void Client::use_event_dispatcher(IO::EventDispatcher *ed)
 void Client::start_request(const Request &r)
 {
        if(request)
-               throw InvalidState("Already processing a request");
+               throw client_busy();
 
        string host = r.get_header("Host");
        if(host.find(':')==string::npos)
@@ -109,7 +108,7 @@ void Client::connect_finished(const exception *err)
 {
        if(err)
        {
-               signal_socket_error.emit(err);
+               signal_socket_error.emit(*err);
 
                delete request;
                request = 0;
@@ -128,7 +127,7 @@ void Client::data_available()
        }
        catch(const exception &e)
        {
-               signal_socket_error.emit(&e);
+               signal_socket_error.emit(e);
                return;
        }