curiousdannii-testing / inform7-imported-bugs

0 stars 0 forks source link

[I7-1908] [Mantis 1944] Writing a table containing a list of numbers to file then reading back in corrupts table #176

Open curiousdannii-testing opened 2 years ago

curiousdannii-testing commented 2 years ago

Reported by : MattD

Description :

When writing a table containing a list of numbers to file, the file produced contains what appears to be memory pointers as opposed to the static data. When reading the file back in, the table is corrupted.

23.13 of the manual states:

"The only tables which Inform allows us to write into files are those containing "safe" data: numbers, units, times of day and kinds of value with named alternatives. Scenes, rules or rulebooks, in particular, are not allowed."

There is no mention of lists; one would assume that a static list of numbers is "safe" data and should be written and read in correctly.

Steps to reproduce :

"Writing Table Problem" by MattD

Test is a room.

The file of test-table is called "bugtest".

Table of Test
nums ( a list of numbers )
{1, 2, 3}
{4, 5}
{6, 7, 8, 9, 10}

When play begins:
    say "Writing file.[line break]";    
    write File of test-table from the Table of Test;
    showme the contents of Table of Test;
    say "Reading file.[line break]";
    read File of test-table into the Table of Test;
    showme the contents of Table of Test;

Additional information :

imported from: [Mantis 1944] Writing a table containing a list of numbers to file then reading back in corrupts table
  • status: Reported
  • resolution: Open
  • resolved: 2022-04-07T05:01:49+10:00
  • imported: 2022/01/10