Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
ohNet crash in DviServer::SubnetListChanged
19-03-2014, 12:26 PM
Post: #1
ohNet crash in DviServer::SubnetListChanged
I'm seeing an occasional crash in DviServer::SubnetListChanged. The location of the crash is the current->Address() call in the sixth line of the code below:

Code:
if (adapterList.SingleSubnetModeEnabled()) {
    TInt i;
    // remove servers whose interface is no longer available
    for (i = (TInt)iServers.size() - 1; i >= 0; i--) {
        DviServer::Server* server = iServers[i];
        if (server->Interface() != current->Address()) {
            delete server;
            iServers.erase(iServers.begin() + i);

The crash happens when NetworkAdapter::Address tries to dereference the 'current' pointer, which has a NULL value. What might cause 'current' to be set to NULL?
Find all posts by this user
19-03-2014, 01:33 PM
Post: #2
RE: ohNet crash in DviServer::SubnetListChanged
(19-03-2014 12:26 PM)simoncn Wrote:  I'm seeing an occasional crash in DviServer::SubnetListChanged.

........

The crash happens when NetworkAdapter::Address tries to dereference the 'current' pointer, which has a NULL value. What might cause 'current' to be set to NULL?

current will be NULL if no adapter is available or a given subnet has been selected and isn't available. This recent commit fixed what I think is the same issue; can you try updating to the latest code to see if that fixes this?
Find all posts by this user
19-03-2014, 02:02 PM
Post: #3
RE: ohNet crash in DviServer::SubnetListChanged
(19-03-2014 01:33 PM)simonc Wrote:  current will be NULL if no adapter is available or a given subnet has been selected and isn't available. This recent commit fixed what I think is the same issue; can you try updating to the latest code to see if that fixes this?

Thanks for the quick response. It looks like this commit should fix the problem. I'll run with the latest version for the next few days and see what happens.
Find all posts by this user


Forum Jump: