[libxml2] Avoid Possible Null Pointer in trio.c



commit e036cb3160378d7c46f99434de07c065ebb05bc9
Author: Gaurav Gupta <g gupta samsung com>
Date:   Mon Jul 14 21:22:07 2014 +0800

    Avoid Possible Null Pointer in trio.c
    
    For https://bugzilla.gnome.org/show_bug.cgi?id=730005
    While using assert in libxml2 is really not a good idea, it's
    still better to assert than crash

 trio.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)
---
diff --git a/trio.c b/trio.c
index 1016a5a..c8b9c84 100644
--- a/trio.c
+++ b/trio.c
@@ -6434,11 +6434,14 @@ TRIO_ARGS2((self, intPointer),
           trio_class_t *self,
           int *intPointer)
 {
-  FILE *file = (FILE *)self->location;
+  FILE *file;
 
   assert(VALID(self));
+  assert(VALID(self->location));
   assert(VALID(file));
 
+  file = (FILE *)self->location;
+
   self->current = fgetc(file);
   if (self->current == EOF)
     {
@@ -6467,11 +6470,14 @@ TRIO_ARGS2((self, intPointer),
           trio_class_t *self,
           int *intPointer)
 {
-  int fd = *((int *)self->location);
+  int fd;
   int size;
   unsigned char input;
 
   assert(VALID(self));
+  assert(VALID(self->location));
+
+  fd = *((int *)self->location);
 
   size = read(fd, &input, sizeof(char));
   if (size == -1)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]