Package: chdrv
Version: 1.0.13p-2
Severity: serious
Tags: patch

chdrv fails to build because it uses an invalid storage class for the
declaration of cursor and because it contains labels at the end of
compound statements (not shown below):

> gcc -c -DCHSYS=\"/usr/share/chdrv/\" -DCHBIN=\"/usr/bin/\" 
> -DCHETC=\"/etc/chdrv/\"  -DUSE_BY_CHDAM -O2 -DDISABLE_CACHE 
> -DDISABLE_FUNCTION_KEY -DUSE_ELF chinese.c
> chinese.c: In function '_ch_swap_console':
> chinese.c:128: error: invalid storage class for function 'cursor'
> chinese.c:150: warning: pointer targets in assignment differ in signedness
> chinese.c:151: warning: pointer targets in assignment differ in signedness
> chinese.c: In function 'ch_change_console':
> chinese.c:168: error: invalid storage class for function 'cursor'
> chinese.c:178: warning: pointer targets in assignment differ in signedness
> chinese.c:179: warning: pointer targets in assignment differ in signedness
> chinese.c: In function 'demo_output':
> chinese.c:298: warning: pointer targets in passing argument 1 of 
> 'ch_system_showstr' differ in signedness
> chinese.c:299: warning: pointer targets in passing argument 1 of 
> 'ch_system_showstr' differ in signedness
> chinese.c: In function 'ch_drawsystem':
> chinese.c:325: warning: pointer targets in passing argument 1 of 
> 'ch_system_showstr' differ in signedness
> chinese.c:331: warning: pointer targets in passing argument 1 of 
> 'ch_system_showstr' differ in signedness
> chinese.c: In function 'ch_setwsize':
> chinese.c:1311: warning: pointer targets in assignment differ in signedness
> chinese.c:1312: warning: pointer targets in assignment differ in signedness
> chinese.c:1314: warning: pointer targets in assignment differ in signedness
> chinese.c:1320: warning: pointer targets in assignment differ in signedness
> chinese.c:1321: warning: pointer targets in assignment differ in signedness
> chinese.c: In function 'ch_screen_saver':
> chinese.c:1377: warning: pointer targets in passing argument 3 of 
> 'ch_drawstring' differ in signedness

The attached patch fixes these problems.

-- 
Matt
diff -u chdrv-1.0.13p/chdrv.c chdrv-1.0.13p/chdrv.c
--- chdrv-1.0.13p/chdrv.c
+++ chdrv-1.0.13p/chdrv.c
@@ -550,7 +550,6 @@
          }
       }
   }
- end_loop:
 }
 
 
only in patch2:
unchanged:
--- chdrv-1.0.13p.orig/chinese.c
+++ chdrv-1.0.13p/chinese.c
@@ -125,7 +125,6 @@
 void _ch_swap_console(int newconsole)
 {
   int i,j;
-  static void cursor();
   static VSC *swapscr = NULL;
 
   
@@ -165,7 +164,6 @@
 void ch_change_console(int newconsole)
 {
   int i,j,lastmode;
-  static void cursor();
 
   if (newconsole < 0 || newconsole >= CONS_NUM)
     return;
only in patch2:
unchanged:
--- chdrv-1.0.13p.orig/output.c
+++ chdrv-1.0.13p/output.c
@@ -207,6 +207,7 @@
       break;
     case '=':
       /*dump_screen();*/
+      break;
     }
   termstate->state = NORMAL;
   termstate->esc_state = NORMAL;

Attachment: signature.asc
Description: Digital signature

Reply via email to