diff -r d8c64f81b192 -r 92a9ca143677 thermferm/thermferm.c --- a/thermferm/thermferm.c Thu May 22 13:54:52 2014 +0200 +++ b/thermferm/thermferm.c Fri May 23 14:09:07 2014 +0200 @@ -185,10 +185,6 @@ return 1; } -// defaultControlsettings(); -// defaultControlConstants(); -// defaultControlVariables(); - lcdPosition(lcdHandle, 0, 0); sprintf(buf, " Thermferm"); mb_lcdPuts(lcdHandle, buf); @@ -230,19 +226,6 @@ stopLCD(); exit(1); case 0: /* - * Setup shared memory for the parent process - */ -// syslog(LOG_NOTICE, "size %d", sizeof(struct _beer)); -// if ((shmid = shmget(key, sizeof(struct _beer) + 16, IPC_CREAT | 0666)) < 0) { -// syslog(LOG_NOTICE, "shmget: %s", strerror(errno)); -// exit(1); -// } -// beer = shmat(shmid, (void *)0, 0); -// if (beer == (void *)(-1)) { -// syslog(LOG_NOTICE, "shmat: %s", strerror(errno)); -// } - - /* * Run the daemon */ fclose(stdin); @@ -327,6 +310,10 @@ sendRCswitch(tmp2->address, 1); lcdupdate = TRUE; } + if (tmp1->update) { + tmp1->update = FALSE; + lcdupdate = TRUE; + } old1 = tmp1->next; tmp1 = old1; old2 = tmp2->next; @@ -343,6 +330,10 @@ sendRCswitch(tmp2->address, 1); lcdupdate = TRUE; } + if (tmp1->update) { + tmp1->update = FALSE; + lcdupdate = TRUE; + } if (run && lcdupdate) { lcdPosition(lcdHandle, 0, 0);