pspp-commits
[Top][All Lists]
Advanced

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

[Pspp-commits] [SCM] GNU PSPP branch, master, updated. v0.6.1-1130-g885e


From: Ben Pfaff
Subject: [Pspp-commits] [SCM] GNU PSPP branch, master, updated. v0.6.1-1130-g885ed74
Date: Tue, 02 Mar 2010 06:41:01 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU PSPP".

The branch, master has been updated
       via  885ed747012fd54269ca2d9f8b55a838435ebb3e (commit)
       via  0fbcb6682003e6deb5f517c4d54bada0301a61a1 (commit)
      from  c46ed75ddc47e79189b616d173fad98113a27357 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 885ed747012fd54269ca2d9f8b55a838435ebb3e
Author: Ben Pfaff <address@hidden>
Date:   Mon Mar 1 22:20:02 2010 -0800

    procedure: Fix LIST procedure (and others) in GUI.
    
    John Darrington reported that the following syntax makes PSPPIRE
    crash:
    
        data list list /alpha * beta * gamma *.
        begin data.
        1 2 3
        4 5 6
        end data.
    
        list.
    
    The problem is that the GUI output driver keeps a reference to the
    output_items that are submitted to it.  An output_item that in turn
    has a reference to the casereader for the procedure casereader (that
    is, the casereader returned by proc_open()), which currently is LIST
    and few if any other procedures, then causes an assertion failure in
    proc_commit().  This is because until now a precondition of
    proc_commit() has been that the procedure casereader be closed, which
    is what the assertion enforces.
    
    This commit fixes the problem by getting rid of the precondition on
    proc_commit().  Now the procedure casereader's lifetime may be
    extended arbitrarily.  This should help take PSPP output in the
    direction that I want it to go, where more and more output is
    generated directly or semi-directly from casereaders, as the LIST
    procedure now does.

commit 0fbcb6682003e6deb5f517c4d54bada0301a61a1
Author: Ben Pfaff <address@hidden>
Date:   Mon Mar 1 22:12:48 2010 -0800

    casereader: Factor buffering shim out into separate source file.
    
    This moves the "shim" code out of casereader.c into a separate
    casereader-shim.[ch] in preparation for using it from procedure.c.
    
    This commit also adds an optimization: if the shim reads all of the
    subreader, then it closes the subreader immediately, instead of waiting
    for the shim itself to be destroyed. This can allow resources to be freed
    earlier.
    
    This commit also adds a new function casereader_shim_slurp().  This
    function will be used for the first time in the following commit.

-----------------------------------------------------------------------

Summary of changes:
 src/data/automake.mk       |    2 +
 src/data/casereader-shim.c |  142 ++++++++++++++++++++++++++++++++++++++++++++
 src/data/casereader-shim.h |   48 +++++++++++++++
 src/data/casereader.c      |  130 ++++------------------------------------
 src/data/procedure.c       |   73 +++++++++++++++--------
 5 files changed, 251 insertions(+), 144 deletions(-)
 create mode 100644 src/data/casereader-shim.c
 create mode 100644 src/data/casereader-shim.h


hooks/post-receive
-- 
GNU PSPP




reply via email to

[Prev in Thread] Current Thread [Next in Thread]