about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog12
-rw-r--r--iconv/gconv_conf.c12
-rw-r--r--rt/tst-aio6.c13
-rw-r--r--test-skeleton.c6
4 files changed, 31 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 612622a022..220c923691 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,17 @@
 2000-11-24  Ulrich Drepper  <drepper@redhat.com>
 
+	* test-skeleton.c: Mark local functions as static to avoid warnings.
+
+2000-11-23  H.J. Lu  <hjl@gnu.org>
+
+	* rt/tst-aio6.c (do_test): Use pipe instead of STDIN_FILENO to
+	support the background job.
+	Fix a typo.
+
+2000-11-24  Ulrich Drepper  <drepper@redhat.com>
+
 	* iconv/gconv_conf.c (insert_module): Replace old entry if new one
-	hsa same names but lower cost.
+	has same names but lower cost.
 
 2000-11-23  Jakub Jelinek  <jakub@redhat.com>
 
diff --git a/iconv/gconv_conf.c b/iconv/gconv_conf.c
index 15a59072f3..15e930360f 100644
--- a/iconv/gconv_conf.c
+++ b/iconv/gconv_conf.c
@@ -202,12 +202,14 @@ insert_module (struct gconv_module *newp, int tobefreed)
 		  || (newp->cost_hi == root->cost_hi
 		      && newp->cost_lo < root->cost_lo))
 		{
-		  root->cost_hi = newp->cost_hi;
-		  root->cost_lo = newp->cost_lo;
-		  root->module_name = newp->module_name;
-		}
+		  newp->left = root->left;
+		  newp->right = root->right;
+		  newp->same = root->same;
+		  *rootp = newp;
 
-	      if (tobefreed)
+		  free (root);
+		}
+	      else if (tobefreed)
 		free (newp);
 	      return;
 	    }
diff --git a/rt/tst-aio6.c b/rt/tst-aio6.c
index c9a4d946fe..9ba08348f8 100644
--- a/rt/tst-aio6.c
+++ b/rt/tst-aio6.c
@@ -29,7 +29,7 @@
 
 
 #define TEST_FUNCTION do_test ()
-int
+static int
 do_test (void)
 {
   struct aiocb *arr[1];
@@ -38,11 +38,18 @@ do_test (void)
   struct timeval before;
   struct timeval after;
   struct timespec timeout;
+  int fd[2];
   int result = 0;
 
+  if (pipe (fd) != 0)
+    {
+      printf ("cannot create pipe: %m\n");
+      return 1;
+    }
+
   arr[0] = &cb;
 
-  cb.aio_fildes = STDIN_FILENO;
+  cb.aio_fildes = fd[0];
   cb.aio_lio_opcode = LIO_WRITE;
   cb.aio_reqprio = 0;
   cb.aio_buf = (void *) buf;
@@ -52,7 +59,7 @@ do_test (void)
   /* Try to read from stdin where nothing will be available.  */
   if (aio_read (arr[0]) < 0)
     {
-      printf ("aio_write failed: %m\n");
+      printf ("aio_read failed: %m\n");
       return 1;
     }
 
diff --git a/test-skeleton.c b/test-skeleton.c
index e4cd95702d..130ac9359b 100644
--- a/test-skeleton.c
+++ b/test-skeleton.c
@@ -62,7 +62,7 @@ struct name_list
 } *name_list;
 
 /* Add temporary files in list.  */
-void
+static void
 add_temp_file (const char *name)
 {
   struct name_list *newp = (struct name_list *) calloc (sizeof (*newp), 1);
@@ -77,7 +77,7 @@ add_temp_file (const char *name)
 }
 
 /* Delete all temporary files.  */
-void
+static void
 delete_temp_files (void)
 {
   while (name_list != NULL)
@@ -88,7 +88,7 @@ delete_temp_files (void)
 }
 
 /* Timeout handler.  We kill the child and exit with an error.  */
-void
+static void
 timeout_handler (int sig __attribute__ ((unused)))
 {
   int killed;