From: Ben Pfaff Date: Mon, 20 Feb 2023 23:47:52 +0000 (-0800) Subject: casereader: Make casereader_random_class function 'advance' optional. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a0fcc49e7e459973bb01891eb9f34b154f433b30;p=pspp casereader: Make casereader_random_class function 'advance' optional. Stateless casereaders don't necessarily need to do anything for it. --- diff --git a/src/data/casereader-provider.h b/src/data/casereader-provider.h index 2069eb678d..37bde24310 100644 --- a/src/data/casereader-provider.h +++ b/src/data/casereader-provider.h @@ -148,7 +148,7 @@ struct casereader_random_class function should call casereader_force_error on READER. */ void (*destroy) (struct casereader *reader, void *aux); - /* Mandatory. + /* Optional. A call to this function tells the callee that the N cases at the beginning of READER will never be read again. diff --git a/src/data/casereader.c b/src/data/casereader.c index 1b06f42e8a..a410afcbcb 100644 --- a/src/data/casereader.c +++ b/src/data/casereader.c @@ -501,7 +501,8 @@ advance_random_reader (struct casereader *reader, if (new > old) { shared->min_offset = new; - shared->class->advance (reader, shared->aux, new - old); + if (shared->class->advance) + shared->class->advance (reader, shared->aux, new - old); } }