* libbfd.c (bfd_get_file_window): Change return type to boolean.
authorIan Lance Taylor <ian@airs.com>
Wed, 8 Nov 1995 16:32:40 +0000 (16:32 +0000)
committerIan Lance Taylor <ian@airs.com>
Wed, 8 Nov 1995 16:32:40 +0000 (16:32 +0000)
Cast realloc and malloc return values.  If malloc or realloc fail,
set bfd_error_no_memory.
* bfd-in.h (bfd_get_file_window): Change type to boolean.
* bfd-in2.h: Rebuild.

bfd/ChangeLog
bfd/bfd-in.h
bfd/bfd-in2.h
bfd/libbfd.c

index b5666c1..ada9f55 100644 (file)
@@ -1,3 +1,11 @@
+Wed Nov  8 11:31:11 1995  Ian Lance Taylor  <ian@cygnus.com>
+
+       * libbfd.c (bfd_get_file_window): Change return type to boolean.
+       Cast realloc and malloc return values.  If malloc or realloc fail,
+       set bfd_error_no_memory.
+       * bfd-in.h (bfd_get_file_window): Change type to boolean.
+       * bfd-in2.h: Rebuild.
+
 Tue Nov  7 11:53:48 1995  Kim Knuttila  <krk@cygnus.com>
 
        * coff-ppc.c (ppc_record_toc_entry): new function.
index d69f763..303ce02 100644 (file)
@@ -618,9 +618,10 @@ typedef struct _bfd_window {
   struct _bfd_window_internal *i;
 } bfd_window;
 
-void bfd_init_window PARAMS ((bfd_window *));
-void bfd_free_window PARAMS ((bfd_window *));
-int bfd_get_file_window PARAMS ((bfd *, file_ptr, bfd_size_type, bfd_window *, int));
+extern void bfd_init_window PARAMS ((bfd_window *));
+extern void bfd_free_window PARAMS ((bfd_window *));
+extern boolean bfd_get_file_window
+  PARAMS ((bfd *, file_ptr, bfd_size_type, bfd_window *, int));
 
 /* XCOFF support routines for the linker.  */
 
index 394979d..54a7c0c 100644 (file)
@@ -618,9 +618,10 @@ typedef struct _bfd_window {
   struct _bfd_window_internal *i;
 } bfd_window;
 
-void bfd_init_window PARAMS ((bfd_window *));
-void bfd_free_window PARAMS ((bfd_window *));
-int bfd_get_file_window PARAMS ((bfd *, file_ptr, bfd_size_type, bfd_window *, int));
+extern void bfd_init_window PARAMS ((bfd_window *));
+extern void bfd_free_window PARAMS ((bfd_window *));
+extern boolean bfd_get_file_window
+  PARAMS ((bfd *, file_ptr, bfd_size_type, bfd_window *, int));
 
 /* XCOFF support routines for the linker.  */
 
index 5f682ec..291b1fd 100644 (file)
@@ -302,7 +302,7 @@ bfd_free_window (windowp)
 
 static int ok_to_map = 1;
 
-int
+boolean
 bfd_get_file_window (abfd, offset, size, windowp, writable)
      bfd *abfd;
      file_ptr offset;
@@ -412,14 +412,19 @@ bfd_get_file_window (abfd, offset, size, windowp, writable)
     fprintf (stderr, "\n\t%s(%6ld)",
             i->data ? "realloc" : " malloc", (long) size_to_alloc);
   if (i->data)
-    i->data = realloc (i->data, size_to_alloc);
+    i->data = (PTR) realloc (i->data, size_to_alloc);
   else
-    i->data = malloc (size_to_alloc);
+    i->data = (PTR) malloc (size_to_alloc);
   if (debug_windows)
     fprintf (stderr, "\t-> %p\n", i->data);
   i->refcount = 1;
-  if (i->data == 0)
-    return size_to_alloc == 0;
+  if (i->data == NULL)
+    {
+      if (size_to_alloc == 0)
+       return true;
+      bfd_set_error (bfd_error_no_memory);
+      return false;
+    }
   if (bfd_seek (abfd, offset, SEEK_SET) != 0)
     return false;
   i->size = bfd_read (i->data, size, 1, abfd);