diff --git a/src/modules/sybase/sybase.c b/src/modules/sybase/sybase.c
index 45b92c8c647fbc3fe08585cc42b9bdff77e853ce..ee97be64dcf3fabb3c33ebd896d96d746c301935 100644
--- a/src/modules/sybase/sybase.c
+++ b/src/modules/sybase/sybase.c
@@ -24,7 +24,7 @@
 #include "sybase_config.h"
 #include "global.h"
 
-RCSID("$Id: sybase.c,v 1.2 2000/05/03 20:22:19 neotron Exp $");
+RCSID("$Id: sybase.c,v 1.3 2000/05/09 23:13:34 neotron Exp $");
 
 #ifdef HAVE_SYBASE
 
@@ -1174,12 +1174,14 @@ static void f_fetch_fields(INT32 args) {
 /********/
 /* Glue */
 /********/
+
+static struct program* sybase_program;
 void pike_module_exit (void) {
   SYB_MT_EXIT(mainlock);
+  if(sybase_program) free_program(sybase_program);
 }
 
 void pike_module_init (void) {
-  struct program* sybase_program;
 
   sybdebug((stderr,"sybase driver release " SYBASE_DRIVER_VERSION "\n"));