You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Steve Huston (JIRA)" <qp...@incubator.apache.org> on 2009/07/22 01:39:14 UTC

[jira] Resolved: (QPID-1998) Possible 0-pointer crash in SystemInfo::getProcessName()

     [ https://issues.apache.org/jira/browse/QPID-1998?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steve Huston resolved QPID-1998.
--------------------------------

    Resolution: Fixed

Fixed; trunk r796581

> Possible 0-pointer crash in SystemInfo::getProcessName()
> --------------------------------------------------------
>
>                 Key: QPID-1998
>                 URL: https://issues.apache.org/jira/browse/QPID-1998
>             Project: Qpid
>          Issue Type: Bug
>          Components: C++ Client
>    Affects Versions: 0.5
>         Environment: Windows
>            Reporter: Steve Huston
>            Assignee: Steve Huston
>             Fix For: 0.6
>
>
> As reported on users@qpid.apache.org by Alan Conway:
> Nithesh Shetty wrote:
> [snip]
> >  
> > Now the problem  is it give exception if u check the call stack then 
> > it show ptr = 0x00000000 line 664
> > qpid::sys::SystemInfo::getProcessName() 
> > qpid::client::ConnectionHandler::ConnectionHandle()
> > qpid::client::ConnectionImpl::ConnectionImp()
> > qpid::client:Connection::open() ( open connection is from read thread)
> >  
> > tested the above code on windows
> >  
> There's a bug in the windows code for getProcessName which might be the cause of 
> your woes.
> std::string SystemInfo::getProcessName()
> {
>      // Only want info for the current process, so ask for something specific.
>      // The module info won't be used here but it keeps the snapshot limited to
>      // the current process so a search through all processes is not needed.
>      HANDLE snap = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, 0);
>      if (snap == INVALID_HANDLE_VALUE)
>          return 0;
>          ^^^^^^^^
> This return statment is constructing a string from a 0 pointer which is going to 
> lead to a null pointer crash. I don't know if its likely to be the cause of your 
> crash since I don't know under what circumstances you'd get the 
> INVALID_HANDLE_VALUE.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org