Hello community, here is the log from the commit of package libindi for openSUSE:Factory checked in at 2018-04-13 12:52:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libindi (Old) and /work/SRC/openSUSE:Factory/.libindi.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libindi" Fri Apr 13 12:52:03 2018 rev:33 rq:596052 version:1.7.1 Changes: -------- --- /work/SRC/openSUSE:Factory/libindi/libindi.changes 2018-04-11 14:05:34.951009294 +0200 +++ /work/SRC/openSUSE:Factory/.libindi.new/libindi.changes 2018-04-13 12:52:15.614139562 +0200 @@ -1,0 +2,9 @@ +Thu Apr 12 17:16:18 UTC 2018 - wba...@tmo.at + +- Update to version 1.7.1: + * Hotfix for INDI API version that was not updated properly to + 1.7.0 in the previous release + * Fixes to Astrophysics driver + * More code cleanup and refactoring + +------------------------------------------------------------------- @@ -14 +23 @@ - * SX CCD driver updated to support ICX453 & M25C. + * SX CCD driver updated to support ICX453 & M25C. Old: ---- libindi_1.7.0.tar.gz New: ---- libindi_1.7.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libindi.spec ++++++ --- /var/tmp/diff_new_pack.uFghQt/_old 2018-04-13 12:52:18.386039136 +0200 +++ /var/tmp/diff_new_pack.uFghQt/_new 2018-04-13 12:52:18.390038992 +0200 @@ -20,7 +20,7 @@ %define _udevdir %(pkg-config --variable udevdir udev) Name: libindi -Version: 1.7.0 +Version: 1.7.1 Release: 0 Summary: Instrument Neutral Distributed Interface License: GPL-2.0+ and LGPL-2.1+ ++++++ libindi_1.7.0.tar.gz -> libindi_1.7.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/CMakeLists.txt new/libindi/CMakeLists.txt --- old/libindi/CMakeLists.txt 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/CMakeLists.txt 2018-04-12 14:05:03.000000000 +0200 @@ -46,7 +46,7 @@ set(INDI_SOVERSION "1") set(CMAKE_INDI_VERSION_MAJOR 1) set(CMAKE_INDI_VERSION_MINOR 7) -set(CMAKE_INDI_VERSION_RELEASE 0) +set(CMAKE_INDI_VERSION_RELEASE 1) set(CMAKE_INDI_VERSION_STRING "${CMAKE_INDI_VERSION_MAJOR}.${CMAKE_INDI_VERSION_MINOR}.${CMAKE_INDI_VERSION_RELEASE}") set(INDI_VERSION ${CMAKE_INDI_VERSION_MAJOR}.${CMAKE_INDI_VERSION_MINOR}.${CMAKE_INDI_VERSION_RELEASE}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/Doxyfile new/libindi/Doxyfile --- old/libindi/Doxyfile 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/Doxyfile 2018-04-12 14:05:03.000000000 +0200 @@ -38,7 +38,7 @@ # could be handy for archiving the generated documentation or if some version # control system is used. -PROJECT_NUMBER = 1.7.0 +PROJECT_NUMBER = 1.7.1 # Using the PROJECT_BRIEF tag one can provide an optional one line description # for a project that appears at the top of each page and should give viewer a diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/auxiliary/astrometrydriver.h new/libindi/drivers/auxiliary/astrometrydriver.h --- old/libindi/drivers/auxiliary/astrometrydriver.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/auxiliary/astrometrydriver.h 2018-04-12 14:05:03.000000000 +0200 @@ -97,7 +97,7 @@ ISwitchVectorProperty SolverSP; // Solver Settings - IText SolverSettingsT[2]; + IText SolverSettingsT[2] {}; ITextVectorProperty SolverSettingsTP; // Solver Results @@ -105,7 +105,7 @@ INumberVectorProperty SolverResultNP; ITextVectorProperty ActiveDeviceTP; - IText ActiveDeviceT[1]; + IText ActiveDeviceT[1] {}; IBLOBVectorProperty SolverDataBP; IBLOB SolverDataB[1]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/auxiliary/flip_flat.h new/libindi/drivers/auxiliary/flip_flat.h --- old/libindi/drivers/auxiliary/flip_flat.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/auxiliary/flip_flat.h 2018-04-12 14:05:03.000000000 +0200 @@ -75,11 +75,11 @@ // Status ITextVectorProperty StatusTP; - IText StatusT[3]; + IText StatusT[3] {}; // Firmware version ITextVectorProperty FirmwareTP; - IText FirmwareT[1]; + IText FirmwareT[1] {}; int PortFD { -1 }; int productID { 0 }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/auxiliary/skysafari.h new/libindi/drivers/auxiliary/skysafari.h --- old/libindi/drivers/auxiliary/skysafari.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/auxiliary/skysafari.h 2018-04-12 14:05:03.000000000 +0200 @@ -73,7 +73,7 @@ // Settings ITextVectorProperty SettingsTP; - IText SettingsT[3]; + IText SettingsT[3] {}; enum { INDISERVER_HOST, @@ -83,7 +83,7 @@ // Active Devices ITextVectorProperty ActiveDeviceTP; - IText ActiveDeviceT[1]; + IText ActiveDeviceT[1] {}; enum { ACTIVE_TELESCOPE diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/auxiliary/snapcap.h new/libindi/drivers/auxiliary/snapcap.h --- old/libindi/drivers/auxiliary/snapcap.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/auxiliary/snapcap.h 2018-04-12 14:05:03.000000000 +0200 @@ -81,11 +81,11 @@ // Status ITextVectorProperty StatusTP; - IText StatusT[3]; + IText StatusT[3] {}; // Firmware version ITextVectorProperty FirmwareTP; - IText FirmwareT[1]; + IText FirmwareT[1] {}; // Abort ISwitch AbortS[1]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/auxiliary/watchdog.h new/libindi/drivers/auxiliary/watchdog.h --- old/libindi/drivers/auxiliary/watchdog.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/auxiliary/watchdog.h 2018-04-12 14:05:03.000000000 +0200 @@ -75,13 +75,13 @@ INumber HeartBeatN[1]; ITextVectorProperty SettingsTP; - IText SettingsT[3]; + IText SettingsT[3] {}; ISwitchVectorProperty ShutdownProcedureSP; ISwitch ShutdownProcedureS[3]; ITextVectorProperty ActiveDeviceTP; - IText ActiveDeviceT[2]; + IText ActiveDeviceT[2] {}; enum { ACTIVE_TELESCOPE, ACTIVE_DOME }; WatchDogClient *watchdogClient; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/dome/dome_script.h new/libindi/drivers/dome/dome_script.h --- old/libindi/drivers/dome/dome_script.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/dome/dome_script.h 2018-04-12 14:05:03.000000000 +0200 @@ -50,7 +50,7 @@ bool RunScript(int script, ...); ITextVectorProperty ScriptsTP; - IText ScriptsT[15]; + IText ScriptsT[15] {}; double TargetAz { 0 }; int TimeSinceUpdate { 0 }; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/filter_wheel/ifwoptec.h new/libindi/drivers/filter_wheel/ifwoptec.h --- old/libindi/drivers/filter_wheel/ifwoptec.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/filter_wheel/ifwoptec.h 2018-04-12 14:05:03.000000000 +0200 @@ -105,7 +105,7 @@ // Filter Wheel ID ITextVectorProperty WheelIDTP; - IText WheelIDT[1]; + IText WheelIDT[1] {}; // Home function ISwitchVectorProperty HomeSP; @@ -121,7 +121,7 @@ // Firmware of teh IFW ITextVectorProperty FirmwareTP; - IText FirmwareT[1]; + IText FirmwareT[1] {}; //Filter position in simulation mode int actualSimFilter { 1 }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/focuser/focuslynx.h new/libindi/drivers/focuser/focuslynx.h --- old/libindi/drivers/focuser/focuslynx.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/focuser/focuslynx.h 2018-04-12 14:05:03.000000000 +0200 @@ -45,15 +45,15 @@ bool getHubConfig(); // HUB Main Parameter - IText HubT[2]; + IText HubT[2] {}; ITextVectorProperty HubTP; // Network Wired Info - IText WiredT[2]; + IText WiredT[2] {}; ITextVectorProperty WiredTP; //Network WIFI Info - IText WifiT[9]; + IText WifiT[9] {}; ITextVectorProperty WifiTP; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/focuser/focuslynxbase.h new/libindi/drivers/focuser/focuslynxbase.h --- old/libindi/drivers/focuser/focuslynxbase.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/focuser/focuslynxbase.h 2018-04-12 14:05:03.000000000 +0200 @@ -232,7 +232,7 @@ INumberVectorProperty MaxTravelNP; // Focus name configure in the HUB - IText HFocusNameT[1]; + IText HFocusNameT[1] {}; ITextVectorProperty HFocusNameTP; bool isAbsolute; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/focuser/sestosenso.h new/libindi/drivers/focuser/sestosenso.h --- old/libindi/drivers/focuser/sestosenso.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/focuser/sestosenso.h 2018-04-12 14:05:03.000000000 +0200 @@ -61,7 +61,7 @@ INumber TemperatureN[1]; INumberVectorProperty TemperatureNP; - IText FirmwareT[1]; + IText FirmwareT[1] {}; ITextVectorProperty FirmwareTP; INumber SyncN[1]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/focuser/steeldrive.h new/libindi/drivers/focuser/steeldrive.h --- old/libindi/drivers/focuser/steeldrive.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/focuser/steeldrive.h 2018-04-12 14:05:03.000000000 +0200 @@ -128,7 +128,7 @@ INumber SyncN[1]; INumberVectorProperty SyncNP; - IText VersionT[2]; + IText VersionT[2] {}; ITextVectorProperty VersionTP; FocusCustomSetting fSettings[5]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/rotator/gemini.h new/libindi/drivers/rotator/gemini.h --- old/libindi/drivers/rotator/gemini.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/rotator/gemini.h 2018-04-12 14:05:03.000000000 +0200 @@ -273,7 +273,7 @@ ISwitchVectorProperty ResetSP; // Focus and rotator name configure in the HUB - IText HFocusNameT[2]; + IText HFocusNameT[2] {}; ITextVectorProperty HFocusNameTP; // Led Intensity Value diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/rotator/pyxis.cpp new/libindi/drivers/rotator/pyxis.cpp --- old/libindi/drivers/rotator/pyxis.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/rotator/pyxis.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -499,7 +499,7 @@ else { // Fast timer - SetTimer(100); + SetTimer(POLLMS); return; } } @@ -512,7 +512,7 @@ else { // Fast timer - SetTimer(100); + SetTimer(POLLMS); return; } //if (PA == targetPA) @@ -532,6 +532,38 @@ { int nbytes_read = 0, rc = -1; char errstr[MAXRBUF]; + char res[256] = { 0 }; + + if ( (rc = tty_nread_section(PortFD, res, 255, 'F', 1, &nbytes_read)) != TTY_OK) + { + // '!' motion is not complete yet + if (rc == TTY_TIME_OUT) + return false; + + tty_error_msg(rc, errstr, MAXRBUF); + LOGF_ERROR("%s error: %s.", __FUNCTION__, errstr); + + if (HomeRotatorSP.s == IPS_BUSY) + { + HomeRotatorS[0].s = ISS_OFF; + HomeRotatorSP.s = IPS_ALERT; + LOG_ERROR("Homing failed. Check possible jam."); + tcflush(PortFD, TCIOFLUSH); + } + + return false; + } + + LOGF_DEBUG("RES <%s>", res); + + return true; +} + +#if 0 +bool Pyxis::isMotionComplete() +{ + int nbytes_read = 0, rc = -1; + char errstr[MAXRBUF]; char res[1] = { 0 }; if ( (rc = tty_read(PortFD, res, 1, PYXIS_TIMEOUT, &nbytes_read)) != TTY_OK) @@ -560,6 +592,7 @@ return false; } +#endif bool Pyxis::getPA(uint16_t &PA) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/celestrongps.h new/libindi/drivers/telescope/celestrongps.h --- old/libindi/drivers/telescope/celestrongps.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/celestrongps.h 2018-04-12 14:05:03.000000000 +0200 @@ -94,7 +94,7 @@ CELESTRON_DIRECTION guide_direction; /* Firmware */ - IText FirmwareT[5]; + IText FirmwareT[5] {}; ITextVectorProperty FirmwareTP; //INumberVectorProperty HorizontalCoordsNP; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/ieqpro.h new/libindi/drivers/telescope/ieqpro.h --- old/libindi/drivers/telescope/ieqpro.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/ieqpro.h 2018-04-12 14:05:03.000000000 +0200 @@ -94,7 +94,7 @@ void getStartupData(); /* Firmware */ - IText FirmwareT[5]; + IText FirmwareT[5] {}; ITextVectorProperty FirmwareTP; /* Tracking Mode */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/ioptronv3.h new/libindi/drivers/telescope/ioptronv3.h --- old/libindi/drivers/telescope/ioptronv3.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/ioptronv3.h 2018-04-12 14:05:03.000000000 +0200 @@ -96,7 +96,7 @@ void getStartupData(); /* Firmware */ - IText FirmwareT[5]; + IText FirmwareT[5] {}; ITextVectorProperty FirmwareTP; /* GPS Status */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200_10micron.h new/libindi/drivers/telescope/lx200_10micron.h --- old/libindi/drivers/telescope/lx200_10micron.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200_10micron.h 2018-04-12 14:05:03.000000000 +0200 @@ -119,7 +119,7 @@ protected: void getBasicData() override; - IText ProductT[4]; + IText ProductT[4] {}; ITextVectorProperty ProductTP; virtual int SetRefractionModelTemperature(double temperature); @@ -150,7 +150,7 @@ INumber NewAlignmentPointsN[1]; INumberVectorProperty NewAlignmentPointsNP; - IText NewModelNameT[1]; + IText NewModelNameT[1] {}; ITextVectorProperty NewModelNameTP; private: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200_OnStep.h new/libindi/drivers/telescope/lx200_OnStep.h --- old/libindi/drivers/telescope/lx200_OnStep.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200_OnStep.h 2018-04-12 14:05:03.000000000 +0200 @@ -77,7 +77,7 @@ void OSUpdateFocuser(); ITextVectorProperty ObjectInfoTP; - IText ObjectInfoT[1]; + IText ObjectInfoT[1] {}; ISwitchVectorProperty StarCatalogSP; ISwitch StarCatalogS[3]; @@ -101,11 +101,11 @@ INumber ElevationLimitN[2]; ITextVectorProperty VersionTP; - IText VersionT[5]; + IText VersionT[5] {}; // OnStep Status controls ITextVectorProperty OnstepStatTP; - IText OnstepStat[10]; + IText OnstepStat[10] {}; // Focuser controls // Focuser 1 @@ -144,7 +144,7 @@ // Align Buttons ISwitchVectorProperty OSAlignSP; ISwitch OSAlignS[4]; - IText OSAlignT[1]; + IText OSAlignT[1] {}; ITextVectorProperty OSAlignTP; ISwitchVectorProperty TrackCompSP; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200ap.h new/libindi/drivers/telescope/lx200ap.h --- old/libindi/drivers/telescope/lx200ap.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200ap.h 2018-04-12 14:05:03.000000000 +0200 @@ -101,10 +101,10 @@ ISwitch APGuideSpeedS[3]; ISwitchVectorProperty APGuideSpeedSP; - IText VersionT[1]; + IText VersionT[1] {}; ITextVectorProperty VersionInfo; - IText DeclinationAxisT[1]; + IText DeclinationAxisT[1] {}; ITextVectorProperty DeclinationAxisTP; INumber SlewAccuracyN[2]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200ap_experimental.cpp new/libindi/drivers/telescope/lx200ap_experimental.cpp --- old/libindi/drivers/telescope/lx200ap_experimental.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200ap_experimental.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -148,12 +148,15 @@ defineSwitch(&UnparkFromSP); + // MSF 2018/04/10 - disable this behavior for now - we want to have + // UnparkFromSP to always start out as "Last Parked" for safety + // load config to get unpark from position user wants BEFORE we connect to mount - if (!isConnected()) - { - LOG_DEBUG("Loading unpark from location from config file"); - loadConfig(true, UnparkFromSP.name); - } + // if (!isConnected()) + // { + // LOG_DEBUG("Loading unpark from location from config file"); + // loadConfig(true, UnparkFromSP.name); + // } if (isConnected()) { @@ -1309,7 +1312,6 @@ IUSaveConfigSwitch(fp, &SyncCMRSP); IUSaveConfigSwitch(fp, &APSlewSpeedSP); IUSaveConfigSwitch(fp, &APGuideSpeedSP); - IUSaveConfigSwitch(fp, &UnparkFromSP); IUSaveConfigSwitch(fp, &ParkToSP); return true; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200ap_experimental.h new/libindi/drivers/telescope/lx200ap_experimental.h --- old/libindi/drivers/telescope/lx200ap_experimental.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200ap_experimental.h 2018-04-12 14:05:03.000000000 +0200 @@ -110,7 +110,7 @@ INumberVectorProperty MeridianDelayNP; INumber MeridianDelayN[1]; - IText VersionT[1]; + IText VersionT[1] {}; ITextVectorProperty VersionInfo; private: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200ap_gtocp2.h new/libindi/drivers/telescope/lx200ap_gtocp2.h --- old/libindi/drivers/telescope/lx200ap_gtocp2.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200ap_gtocp2.h 2018-04-12 14:05:03.000000000 +0200 @@ -94,7 +94,7 @@ ISwitch APGuideSpeedS[3]; ISwitchVectorProperty APGuideSpeedSP; - IText VersionT[1]; + IText VersionT[1] {}; ITextVectorProperty VersionInfo; private: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200autostar.h new/libindi/drivers/telescope/lx200autostar.h --- old/libindi/drivers/telescope/lx200autostar.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200autostar.h 2018-04-12 14:05:03.000000000 +0200 @@ -39,7 +39,7 @@ virtual bool updateProperties(); ITextVectorProperty VersionTP; - IText VersionT[5]; + IText VersionT[5] {}; INumberVectorProperty FocusSpeedNP; INumber FocusSpeedN[1]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200classic.h new/libindi/drivers/telescope/lx200classic.h --- old/libindi/drivers/telescope/lx200classic.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200classic.h 2018-04-12 14:05:03.000000000 +0200 @@ -37,7 +37,7 @@ protected: ITextVectorProperty ObjectInfoTP; - IText ObjectInfoT[1]; + IText ObjectInfoT[1] {}; ISwitchVectorProperty StarCatalogSP; ISwitch StarCatalogS[3]; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/lx200telescope.h new/libindi/drivers/telescope/lx200telescope.h --- old/libindi/drivers/telescope/lx200telescope.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/lx200telescope.h 2018-04-12 14:05:03.000000000 +0200 @@ -177,7 +177,7 @@ /* Site Name */ ITextVectorProperty SiteNameTP; - IText SiteNameT[1]; + IText SiteNameT[1] {}; /* Focus motion */ ISwitchVectorProperty FocusMotionSP; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/pmc8.h new/libindi/drivers/telescope/pmc8.h --- old/libindi/drivers/telescope/pmc8.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/pmc8.h 2018-04-12 14:05:03.000000000 +0200 @@ -107,7 +107,7 @@ void getStartupData(); /* Firmware */ - IText FirmwareT[1]; + IText FirmwareT[1] {}; ITextVectorProperty FirmwareTP; /* Tracking Mode */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/skywatcherAPIMount.h new/libindi/drivers/telescope/skywatcherAPIMount.h --- old/libindi/drivers/telescope/skywatcherAPIMount.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/skywatcherAPIMount.h 2018-04-12 14:05:03.000000000 +0200 @@ -97,7 +97,7 @@ MOUNT_NAME, IS_DC_MOTOR }; - IText BasicMountInfo[4]; + IText BasicMountInfo[4] {}; ITextVectorProperty BasicMountInfoV; enum diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/skywatcherAltAzSimple.h new/libindi/drivers/telescope/skywatcherAltAzSimple.h --- old/libindi/drivers/telescope/skywatcherAltAzSimple.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/skywatcherAltAzSimple.h 2018-04-12 14:05:03.000000000 +0200 @@ -85,7 +85,7 @@ MOUNT_NAME, IS_DC_MOTOR }; - IText BasicMountInfo[4]; + IText BasicMountInfo[4] {}; ITextVectorProperty BasicMountInfoV; enum diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/telescope/telescope_script.h new/libindi/drivers/telescope/telescope_script.h --- old/libindi/drivers/telescope/telescope_script.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/telescope/telescope_script.h 2018-04-12 14:05:03.000000000 +0200 @@ -51,5 +51,5 @@ bool RunScript(int script, ...); ITextVectorProperty ScriptsTP; - IText ScriptsT[15]; + IText ScriptsT[15] {}; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/video/v4l2driver.h new/libindi/drivers/video/v4l2driver.h --- old/libindi/drivers/video/v4l2driver.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/video/v4l2driver.h 2018-04-12 14:05:03.000000000 +0200 @@ -116,9 +116,9 @@ ISwitch ColorProcessingS[3]; /* Texts */ - IText PortT[1]; - IText camNameT[1]; - IText CaptureColorSpaceT[3]; + IText PortT[1] {}; + IText camNameT[1] {}; + IText CaptureColorSpaceT[3] {}; /* Numbers */ //INumber *ExposeTimeN; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/weather/mbox.h new/libindi/drivers/weather/mbox.h --- old/libindi/drivers/weather/mbox.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/weather/mbox.h 2018-04-12 14:05:03.000000000 +0200 @@ -62,7 +62,7 @@ ISwitch ResetS[1]; ISwitchVectorProperty ResetSP; - IText FirmwareT[1]; + IText FirmwareT[1] {}; ITextVectorProperty FirmwareTP; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/weather/weathermeta.h new/libindi/drivers/weather/weathermeta.h --- old/libindi/drivers/weather/weathermeta.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/weather/weathermeta.h 2018-04-12 14:05:03.000000000 +0200 @@ -53,7 +53,7 @@ void updateUpdatePeriod(); // Active stations - IText ActiveDeviceT[4]; + IText ActiveDeviceT[4] {}; ITextVectorProperty ActiveDeviceTP; // Stations status diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/drivers/weather/wunderground.h new/libindi/drivers/weather/wunderground.h --- old/libindi/drivers/weather/wunderground.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/drivers/weather/wunderground.h 2018-04-12 14:05:03.000000000 +0200 @@ -48,7 +48,7 @@ virtual bool updateLocation(double latitude, double longitude, double elevation); private: - IText wunderAPIKeyT[1]; + IText wunderAPIKeyT[1] {}; ITextVectorProperty wunderAPIKeyTP; double wunderLat, wunderLong; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/indiapi.h new/libindi/indiapi.h --- old/libindi/indiapi.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/indiapi.h 2018-04-12 14:05:03.000000000 +0200 @@ -131,8 +131,8 @@ /* INDI Library version */ #define INDI_VERSION_MAJOR 1 -#define INDI_VERSION_MINOR 6 -#define INDI_VERSION_RELEASE 3 +#define INDI_VERSION_MINOR 7 +#define INDI_VERSION_RELEASE 1 /******************************************************************************* * Manifest constants diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/indiserver.c new/libindi/indiserver.c --- old/libindi/indiserver.c 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/indiserver.c 2018-04-12 14:05:03.000000000 +0200 @@ -948,11 +948,11 @@ char cmd[MAXSBUF], arg[4][1], var[4][MAXSBUF], tDriver[MAXSBUF], tName[MAXSBUF], envConfig[MAXSBUF], envSkel[MAXSBUF], envPrefix[MAXSBUF]; - memset(&tDriver[0], 0, sizeof(MAXSBUF)); - memset(&tName[0], 0, sizeof(MAXSBUF)); - memset(&envConfig[0], 0, sizeof(MAXSBUF)); - memset(&envSkel[0], 0, sizeof(MAXSBUF)); - memset(&envPrefix[0], 0, sizeof(MAXSBUF)); + memset(&tDriver[0], 0, sizeof(char) * MAXSBUF); + memset(&tName[0], 0, sizeof(char) * MAXSBUF); + memset(&envConfig[0], 0, sizeof(char) * MAXSBUF); + memset(&envSkel[0], 0, sizeof(char) * MAXSBUF); + memset(&envPrefix[0], 0, sizeof(char) * MAXSBUF); int n = 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/alignment/MathPluginManagement.cpp new/libindi/libs/indibase/alignment/MathPluginManagement.cpp --- old/libindi/libs/indibase/alignment/MathPluginManagement.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/alignment/MathPluginManagement.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -24,6 +24,7 @@ pTransformTelescopeToCelestial(&MathPlugin::TransformTelescopeToCelestial), pLoadedMathPlugin(&BuiltInPlugin), LoadedMathPluginHandle(nullptr) { + memset(&AlignmentSubsystemCurrentMathPlugin, 0, sizeof(IText)); } void MathPluginManagement::InitProperties(Telescope *ChildTelescope) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/basedevice.cpp new/libindi/libs/indibase/basedevice.cpp --- old/libindi/libs/indibase/basedevice.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/basedevice.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -858,6 +858,7 @@ bvp->s = state; bvp->p = perm; + bvp->timeout = timeout; /* pull out each name/value pair */ for (n = 0, ep = nextXMLEle(root, 1); ep != nullptr; ep = nextXMLEle(root, 0), n++) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/defaultdevice.cpp new/libindi/libs/indibase/defaultdevice.cpp --- old/libindi/libs/indibase/defaultdevice.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/defaultdevice.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -64,6 +64,7 @@ majorVersion = 1; minorVersion = 0; interfaceDescriptor = GENERAL_INTERFACE; + memset(&ConnectionModeSP, 0, sizeof(ConnectionModeSP)); } DefaultDevice::~DefaultDevice() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/indidetector.cpp new/libindi/libs/indibase/indidetector.cpp --- old/libindi/libs/indibase/indidetector.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/indidetector.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -1239,6 +1239,7 @@ if (strstr(epdf->d_name, prefixIndex.c_str())) files.push_back(epdf->d_name); } + closedir(dpdf); } else return -1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/indidome.cpp new/libindi/libs/indibase/indidome.cpp --- old/libindi/libs/indibase/indidome.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/indidome.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -61,10 +61,17 @@ parkDataType = PARK_NONE; Parkdatafile = "~/.indi/ParkData.xml"; + ParkdataXmlRoot = nullptr; } Dome::~Dome() { + if (ParkdataXmlRoot) + delXMLEle(ParkdataXmlRoot); + + delete controller; + delete serialConnection; + delete tcpConnection; } bool Dome::initProperties() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/indilightboxinterface.cpp new/libindi/libs/indibase/indilightboxinterface.cpp --- old/libindi/libs/indibase/indilightboxinterface.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/indilightboxinterface.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -304,7 +304,7 @@ else { // Ensure no duplicates - for (int i = 0; i < FilterIntensityNP.nnp + 1; i++) + for (int i = 0; i < FilterIntensityNP.nnp; i++) { if (!strcmp(filterName, FilterIntensityN[i].name)) return; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/inditelescope.cpp new/libindi/libs/indibase/inditelescope.cpp --- old/libindi/libs/indibase/inditelescope.cpp 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/inditelescope.cpp 2018-04-12 14:05:03.000000000 +0200 @@ -43,6 +43,7 @@ capability = 0; last_we_motion = last_ns_motion = -1; parkDataType = PARK_NONE; + ParkdataXmlRoot = nullptr; IsParked = false; IsLocked = true; @@ -62,6 +63,9 @@ Telescope::~Telescope() { + if (ParkdataXmlRoot) + delXMLEle(ParkdataXmlRoot); + delete (controller); } @@ -794,7 +798,7 @@ // Remember Track State RememberTrackState = TrackState; - // Issue GOTO + // Issue GOTO rc = Goto(ra, dec); if (rc) { @@ -1874,7 +1878,7 @@ return (char *)("Unable to parse Park Position Axis 2."); } - if (std::isnan(axis1Pos) == false && std::isnan(axis1Pos) == false) + if (std::isnan(axis1Pos) == false && std::isnan(axis2Pos) == false) { Axis1ParkPosition = axis1Pos; Axis2ParkPosition = axis2Pos; @@ -1939,19 +1943,19 @@ return true; } -double Telescope::GetAxis1Park() +double Telescope::GetAxis1Park() const { return Axis1ParkPosition; } -double Telescope::GetAxis1ParkDefault() +double Telescope::GetAxis1ParkDefault() const { return Axis1DefaultParkPosition; } -double Telescope::GetAxis2Park() +double Telescope::GetAxis2Park() const { return Axis2ParkPosition; } -double Telescope::GetAxis2ParkDefault() +double Telescope::GetAxis2ParkDefault() const { return Axis2DefaultParkPosition; } @@ -1980,7 +1984,7 @@ Axis2DefaultParkPosition = value; } -bool Telescope::isLocked() +bool Telescope::isLocked() const { return (DomeClosedLockT[1].s == ISS_ON || DomeClosedLockT[3].s == ISS_ON) && IsLocked; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indibase/inditelescope.h new/libindi/libs/indibase/inditelescope.h --- old/libindi/libs/indibase/inditelescope.h 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indibase/inditelescope.h 2018-04-12 14:05:03.000000000 +0200 @@ -286,22 +286,22 @@ /** * @return Get current RA/AZ parking position. */ - double GetAxis1Park(); + double GetAxis1Park() const; /** * @return Get default RA/AZ parking position. */ - double GetAxis1ParkDefault(); + double GetAxis1ParkDefault() const; /** * @return Get current DEC/ALT parking position. */ - double GetAxis2Park(); + double GetAxis2Park() const; /** * @return Get defailt DEC/ALT parking position. */ - double GetAxis2ParkDefault(); + double GetAxis2ParkDefault() const; /** * @brief SetRAPark Set current RA/AZ parking position. The data park file (stored in @@ -338,7 +338,7 @@ * @return true if lock status equals true and DomeClosedLockTP is Dome Locks or Dome Locks and * Dome Parks (both). */ - bool isLocked(); + bool isLocked() const; // Joystick helpers static void joystickHelper(const char *joystick_n, double mag, double angle, void *context); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libindi/libs/indicom.c new/libindi/libs/indicom.c --- old/libindi/libs/indicom.c 2018-04-08 14:35:17.000000000 +0200 +++ new/libindi/libs/indicom.c 2018-04-12 14:05:03.000000000 +0200 @@ -890,6 +890,13 @@ return TTY_PORT_FAILURE; } + // Get the current options and save them so we can restore the default settings later. + if (tcgetattr(t_fd, &tty_setting) == -1) + { + perror("tty_connect: failed getting tty attributes."); + return TTY_PORT_FAILURE; + } + /* Control Modes Set bps rate */ switch (bit_rate)