2011-03-01 98 views
1

我正在写一个应用程序,它使用pion库并在我尝试发送请求时发现崩溃。由于分段故障导致崩溃。这是在Linux中,我正在连接PION_FULL。PION:在HTTPRequest中发生崩溃发送

代码:

pion::net::HTTPRequest httpRequest("/sm_login/trusted.asp?app-id=test"); 
int port = 80; 

httpRequest.setMethod("GET"); 
httpRequest.addHeader("Host", "127.0.0.1"); 

pion::net::TCPConnection connPtr(IO_service); 

error = connPtr.connect(boost::asio::ip::address::from_string("127.0.0.1"), port); 

if (error || !connPtr.is_open()) 
{ 
    dprintf(("Unable to establish connection")); 
    return false; 
} 

httpRequest.send(connPtr, error); 

转储:

#0 0x0eec4bb4 in void pion::net::HTTPMessage::changeValue<std::tr1::unordered_multimap<std::string, std::string, CaseInsensitiveHash, CaseInsensitiveEqual, std::allocator<std::pair<std::string const, std::string> > > 
>(std::tr1::unordered_multimap<std::string, std::string, CaseInsensitiveHash, CaseInsensitiveEqual, std::allocator<std::pair<std::string const, std::string> > >&, std::string const&, std::string const&)() from /sw/lib/libpion-net-2.2.12.so 
#1 0x0eec11f0 in pion::net::HTTPMessage::send(pion::net::TCPConnection&, boost::system::error_code&)() from /sw/lib/libpion-net-2.2.12.so 
#2 0x0f1e6c24 in CHeapInterface::SendRequest(std::string const&, std::string&, CHeapInterface::EHeapMsgType)() from /sw/lib/libMgmt.so 

感谢,

回答

1

的问题是由于用于构建介子库交叉编译的版本不匹配。该应用程序不再崩溃。

+0

请您详细说明一下吗?坠毁时您使用了哪些标记,并且在您不坠落时使用了哪些标记?我有个类似的问题。 – Alex 2014-08-10 09:18:53