From 0ef22a3deb1c852d464e42d419924744cbf24a8f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Thu, 22 Oct 1998 02:10:13 +0200
Subject: [PATCH] Fixed oob bug.

Rev: src/modules/files/file.c:1.127
---
 src/modules/files/file.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/modules/files/file.c b/src/modules/files/file.c
index 60c0b92d81..247ba26282 100644
--- a/src/modules/files/file.c
+++ b/src/modules/files/file.c
@@ -5,7 +5,7 @@
 \*/
 
 #include "global.h"
-RCSID("$Id: file.c,v 1.126 1998/10/21 22:01:01 grubba Exp $");
+RCSID("$Id: file.c,v 1.127 1998/10/22 00:10:13 grubba Exp $");
 #include "fdlib.h"
 #include "interpret.h"
 #include "svalue.h"
@@ -551,7 +551,7 @@ static struct pike_string *do_read_oob(int fd,
     
     if(!IS_ZERO(& THIS->read_oob_callback))
     {
-      set_read_callback(FD, file_read_oob_callback, THIS);
+      set_read_oob_callback(FD, file_read_oob_callback, THIS);
       SET_INTERNAL_REFERENCE(THIS);
     }
 
@@ -560,8 +560,8 @@ static struct pike_string *do_read_oob(int fd,
       return end_shared_string(str);
     }else{
       struct pike_string *foo; /* Per */
-      foo = make_shared_binary_string(str->str,bytes_read);
-      free((char *)str);
+      foo = make_shared_binary_string(str->str, bytes_read);
+      free_string(end_shared_string(str));
       return foo;
     }
     
@@ -623,7 +623,7 @@ static struct pike_string *do_read_oob(int fd,
     UNSET_ONERROR(ebuf);
     if(!IS_ZERO(& THIS->read_oob_callback))
     {
-      set_read_callback(FD, file_read_oob_callback, THIS);
+      set_read_oob_callback(FD, file_read_oob_callback, THIS);
       SET_INTERNAL_REFERENCE(THIS);
     }
     return low_free_buf(&b);
-- 
GitLab