summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Baumann <mail@andreasbaumann.cc>2014-10-03 20:47:34 +0200
committerAndreas Baumann <mail@andreasbaumann.cc>2014-10-03 20:47:34 +0200
commitccf23e71918d2af7ad9d261a2b012836cd168d60 (patch)
treefa10e73f8bb5b168787eb03ac1a3f957c96d6b31
parent992919c4be2336c5b8f2f0549712c51bd7fb9c03 (diff)
downloadcrawler-ccf23e71918d2af7ad9d261a2b012836cd168d60.tar.gz
crawler-ccf23e71918d2af7ad9d261a2b012836cd168d60.tar.bz2
some curl fixes
-rw-r--r--src/libcrawler/SpoolRewindInputStream.cpp7
-rw-r--r--src/modules/fetcher/libcurl/LibCurlRewindInputStream.cpp4
2 files changed, 7 insertions, 4 deletions
diff --git a/src/libcrawler/SpoolRewindInputStream.cpp b/src/libcrawler/SpoolRewindInputStream.cpp
index 472a539..7108cc9 100644
--- a/src/libcrawler/SpoolRewindInputStream.cpp
+++ b/src/libcrawler/SpoolRewindInputStream.cpp
@@ -36,6 +36,9 @@ spool_streambuf::~spool_streambuf( )
streambuf::int_type spool_streambuf::spoolSourceData( char *data, size_t n )
{
+ m_base = &m_buf.front( );
+ m_start = m_base;
+
size_t data_len = m_buf.size( ) - ( m_start - m_base ) ;
// more space than data, no problem
@@ -44,10 +47,10 @@ streambuf::int_type spool_streambuf::spoolSourceData( char *data, size_t n )
}
// enough space in the stream read buffer, put it there
- m_base = &m_buf.front( );
- m_start = m_base;
+ memcpy( m_start, data, data_len );
setg( m_base, m_start, m_start + data_len );
+ data += data_len;
n -= data_len;
spoolData( data, n );
diff --git a/src/modules/fetcher/libcurl/LibCurlRewindInputStream.cpp b/src/modules/fetcher/libcurl/LibCurlRewindInputStream.cpp
index 19098e8..1b80ce5 100644
--- a/src/modules/fetcher/libcurl/LibCurlRewindInputStream.cpp
+++ b/src/modules/fetcher/libcurl/LibCurlRewindInputStream.cpp
@@ -56,8 +56,8 @@ LibCurlRewindInputStream::LibCurlRewindInputStream( const URL &url )
m_curl->setOpt( Options::Url( url.str( ).c_str( ) ) );
// how to use logger here?
- m_curl->setOpt( Options::Header( true ) );
- m_curl->setOpt( Options::Verbose( true ) );
+// m_curl->setOpt( Options::Header( true ) );
+// m_curl->setOpt( Options::Verbose( true ) );
/* m_curl->set( DebugFunction( types::DebugFunctionFunctor( &
request.setOpt(Verbose(true));
request.setOpt(DebugFunction(curlpp::types::DebugFunctionFunctor(&myWindow,