Skip to content

Use non-pointer INDI::Property.

A small update.

void ClientManager::newProperty(INDI::Property *pprop)
{
    INDI::Property prop(*pprop); // <====== shared!

    // Do not emit the signal if the server is disconnected or disconnecting (deadlock between signals)
    if (!isServerConnected())
    {
        IDLog("Received new property %s for disconnected device %s, discarding\n", prop.getName(), prop.getDeviceName());
        return;
    }

    //IDLog("Received new property %s for device %s\n", prop->getName(), prop->getgetDeviceName());
    emit newINDIProperty(prop); // <====== shared!

Now, on asynchronous calls, the INDI::Property object will not be destroyed too early.

Merge request reports