From a757015f3560d32c2608e63ca8cdc41bdd3fc1e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fredrik=20H=C3=BCbinette=20=28Hubbe=29?= <hubbe@hubbe.net> Date: Sat, 16 May 1998 01:23:44 -0700 Subject: [PATCH] now saves driver version when dumping programs Rev: src/encode.c:1.23 --- src/encode.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/encode.c b/src/encode.c index 3d69cecf30..87e03cb9ef 100644 --- a/src/encode.c +++ b/src/encode.c @@ -21,8 +21,9 @@ #include "fsort.h" #include "threads.h" #include "stuff.h" +#include "version.h" -RCSID("$Id: encode.c,v 1.22 1998/05/01 16:20:27 grubba Exp $"); +RCSID("$Id: encode.c,v 1.23 1998/05/16 08:23:44 hubbe Exp $"); #ifdef _AIX #include <net/nh.h> @@ -404,6 +405,9 @@ static void encode_value2(struct svalue *val, struct encode_data *data) if(p->init || p->exit || p->gc_marked || p->gc_check || (p->flags & PROGRAM_HAS_C_METHODS)) error("Cannot encode C programs.\n"); + f_version(0); + encode_value2(sp-1,data); + pop_stack(); code_entry(val->type, 1,data); code_number(p->flags,data); code_number(p->storage_needed,data); @@ -911,6 +915,12 @@ static void decode_value2(struct decode_data *data) data->counter.u.integer++; p->refs--; + decode_value2(data); + f_version(0); + if(!is_eq(sp-1,sp-2)) + error("Cannot decode programs encoded with other driver version.\n"); + pop_n_elems(2); + decode_number(p->flags,data); p->flags &= ~(PROGRAM_FINISHED | PROGRAM_OPTIMIZED); decode_number(p->storage_needed,data); -- GitLab