From 362aa05fd2b447809e6293afd52d6abc0b917878 Mon Sep 17 00:00:00 2001 From: mmdolze Date: Sun, 1 Nov 2009 08:32:50 +0000 Subject: [PATCH] Fix de-selecting of drivers in configure by removing non-portable switch to sed. Silent some compiler and lint warnings. --- ChangeLog | 1 + acinclude.m4 | 2 +- clients/lcdexec/lcdexec.c | 4 ++++ clients/lcdproc/main.c | 3 +++ clients/lcdvc/lcdvc.c | 4 ++++ server/drivers/hd44780.c | 4 ++-- server/drivers/imon.c | 2 +- server/drivers/serialVFD_io.c | 9 +++++---- server/render.c | 4 ++-- 9 files changed, 23 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2884b0a..b53af82 100644 --- a/ChangeLog +++ b/ChangeLog @@ -10,6 +10,7 @@ v.0.5dev (ongoing development) * Modify all drivers to use server/drivers/report.h instead of shared/report.h * Make all drivers using parallel port fail if they cannot get IO permission * Include instead of everywhere (found by S. Klauer) + * configure: Fix de-selecting of drivers v0.5.3 + lcdexec: notification when called program finishes diff --git a/acinclude.m4 b/acinclude.m4 index e90784a..fc7e4ec 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -35,7 +35,7 @@ for driver in $drivers ; do case $driver in !*) driver=`echo "$driver" | sed -e 's/^.//'` - selectdrivers=[`echo " $selectdrivers " | sed -r -e "s/ $driver / /g"`] + selectdrivers=[`echo " $selectdrivers " | sed -e "s/ $driver / /g"`] ;; *) selectdrivers=["$selectdrivers $driver "] diff --git a/clients/lcdexec/lcdexec.c b/clients/lcdexec/lcdexec.c index 2e2b358..4e8669e 100644 --- a/clients/lcdexec/lcdexec.c +++ b/clients/lcdexec/lcdexec.c @@ -174,6 +174,9 @@ int main(int argc, char **argv) main_loop(); exit_program(EXIT_SUCCESS); + + /* NOTREACHED */ + return EXIT_SUCCESS; } @@ -262,6 +265,7 @@ static int process_command_line(int argc, char **argv) case 'h': fprintf(stderr, "%s", help_text); exit(EXIT_SUCCESS); + /* NOTREACHED */ case ':': report(RPT_ERR, "Missing option argument for %c", optopt); error = -1; diff --git a/clients/lcdproc/main.c b/clients/lcdproc/main.c index 7ae7229..2ad2e3f 100644 --- a/clients/lcdproc/main.c +++ b/clients/lcdproc/main.c @@ -337,6 +337,9 @@ main(int argc, char **argv) // Clean up & exit exit_program(EXIT_SUCCESS); + + /* NOTREACHED */ + return EXIT_SUCCESS; } diff --git a/clients/lcdvc/lcdvc.c b/clients/lcdvc/lcdvc.c index b332e27..90404e4 100644 --- a/clients/lcdvc/lcdvc.c +++ b/clients/lcdvc/lcdvc.c @@ -131,6 +131,9 @@ int main(int argc, char **argv) main_loop(); exit_program(EXIT_SUCCESS); + + /* NOTREACHED */ + return EXIT_SUCCESS; } @@ -161,6 +164,7 @@ static int process_command_line(int argc, char **argv) case 'h': fprintf(stderr, "%s", help_text); exit(EXIT_SUCCESS); + /* NOTREACHED */ case 'c': configfile = strdup(optarg); break; diff --git a/server/drivers/hd44780.c b/server/drivers/hd44780.c index bad88dd..d24c61b 100644 --- a/server/drivers/hd44780.c +++ b/server/drivers/hd44780.c @@ -506,7 +506,7 @@ common_init(PrivateData *p, unsigned char if_bit) * \param p Pointer to PrivateData structure. * \param usecs Number of micro-seconds to sleep. */ -void +static void uPause(PrivateData *p, int usecs) { timing_uPause(usecs * p->delayMult); @@ -1393,7 +1393,7 @@ HD44780_output(Driver *drvthis, int on) * \param spanlist '\0'-terminated input span list in comma delimited format. * \return Number of span elements, -1 on parse error. */ -int +static int parse_span_list(int *spanListArray[], int *spLsize, int *dispOffsets[], int *dOffsize, int *dispSizeArray[], const char *spanlist) { int j = 0, retVal = 0; diff --git a/server/drivers/imon.c b/server/drivers/imon.c index 09b30a4..aa84fb6 100644 --- a/server/drivers/imon.c +++ b/server/drivers/imon.c @@ -117,6 +117,7 @@ typedef struct imon_private_data { MODULE_EXPORT int imon_init (Driver *drvthis) { PrivateData *p = NULL; + char buf[256]; // Alocate, initialize and store private p p = (PrivateData *) calloc(1, sizeof(PrivateData)); @@ -130,7 +131,6 @@ MODULE_EXPORT int imon_init (Driver *drvthis) return -1; } - char buf[256]; p->imon_fd = -1; p->width = 0; p->height = 0; diff --git a/server/drivers/serialVFD_io.c b/server/drivers/serialVFD_io.c index 95601cd..f641b4d 100644 --- a/server/drivers/serialVFD_io.c +++ b/server/drivers/serialVFD_io.c @@ -50,23 +50,24 @@ void serialVFD_write_serial (Driver *drvthis, unsigned char *dat, size_t length) { + PrivateData *p = drvthis->private_data; + if (length <= 0) return; - PrivateData *p = drvthis->private_data; write(p->fd,dat,length); } void serialVFD_write_parallel (Driver *drvthis, unsigned char *dat, size_t length) { - if (length <= 0) - return; - #ifdef HAVE_PCSTYLE_LPT_CONTROL PrivateData *p = drvthis->private_data; int i_para, j_para; + if (length <= 0) + return; + for (i_para = 0; i_para < length; i_para++) { port_out(p->port, dat[i_para]); diff --git a/server/render.c b/server/render.c index 986c69f..2a3e49a 100644 --- a/server/render.c +++ b/server/render.c @@ -347,11 +347,11 @@ render_vbar(Widget *w, int left, int top, int right, int bottom) static int render_title(Widget *w, int left, int top, int right, int bottom, long timer) { + int vis_width = right - left; + debug(RPT_DEBUG, "%s(w=%p, left=%d, top=%d, right=%d, bottom=%d, timer=%ld)", __FUNCTION__, w, left, top, right, bottom, timer); - int vis_width = right - left; - if ((w != NULL) && (w->text != NULL) && (vis_width >= 8)) { char str[BUFSIZE]; int length = strlen(w->text);