spreadsheet: Avoid sharing a dictionary between spreadsheet and client.
authorBen Pfaff <blp@cs.stanford.edu>
Sun, 31 Jan 2016 20:28:54 +0000 (12:28 -0800)
committerBen Pfaff <blp@cs.stanford.edu>
Sun, 31 Jan 2016 20:29:18 +0000 (12:29 -0800)
commit958e78555714e9f1847513f9cc576fa2cd7a6769
tree30fe53bd90342ff04d3df68794a8f7a30d2497f2
parent5539849055ad928f536d192561cbbaab3b926180
spreadsheet: Avoid sharing a dictionary between spreadsheet and client.

Spreadsheet implementations keep a copy of the dictionary that they build
to simplify reading cases.  Until now, they shared that dictionary, in a
modifiable way, with their client.  This meant, however, that if the client
modified the dictionary, it could screw up reading further cases from the
spreadsheet.

This commit fixes the problem by forcing clients to make their own copy of
the dictionary if they want to modify it.

Bug #44158.
src/data/gnumeric-reader.c
src/data/ods-reader.c
src/data/spreadsheet-reader.h
src/language/data-io/get-data.c
src/ui/gui/psppire-import-assistant.c