remove pthread_kill/pthread_cancel from signals (if thread wasn't run, these functions cause segfault)

This commit is contained in:
2025-08-12 11:48:48 +03:00
parent 22097610f9
commit e59f9a05b2
4 changed files with 4 additions and 4 deletions

View File

@@ -73,7 +73,7 @@ void logmnt(FILE *fcoords, mountdata_t *m){
}
// write data
fprintf(fcoords, "%12.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10.6f %10u\n",
m->motXposition.t, RAD2DEG(m->motXposition.val), RAD2DEG(m->motYposition.val),
m->encXposition.t, RAD2DEG(m->motXposition.val), RAD2DEG(m->motYposition.val),
RAD2DEG(m->encXposition.val), RAD2DEG(m->encYposition.val),
RAD2DEG(m->encXspeed.val), RAD2DEG(m->encYspeed.val),
m->millis);

View File

@@ -61,12 +61,13 @@ static FILE* fcoords = NULL;
static pthread_t dthr;
void signals(int sig){
pthread_cancel(dthr);
if(sig){
signal(sig, SIG_IGN);
DBG("Get signal %d, quit.\n", sig);
}
DBG("Quit");
Mount.quit();
DBG("close");
if(fcoords) fclose(fcoords);
exit(sig);
}

View File

@@ -75,7 +75,6 @@ static sl_option_t cmdlnopts[] = {
};
void signals(int sig){
pthread_cancel(dthr);
if(sig){
signal(sig, SIG_IGN);
DBG("Get signal %d, quit.\n", sig);