Bug report #226
Saved project is not reloadable when it contains a MapComposition with legend
Status: | Closed | ||
---|---|---|---|
Priority: | Low | ||
Assignee: | Gavin Macaulay - | ||
Category: | Project Loading/Saving | ||
Affected QGIS version: | Regression?: | No | |
Operating System: | RedHat | Easy fix?: | No |
Pull Request or Patch supplied: | Resolution: | fixed | |
Crashes QGIS or corrupts data: | Copied to github as #: | 10285 |
History
#1 Updated by Redmine Admin about 18 years ago
- Status changed from Open to Closed
- Resolution set to invalid
After some tests I can't reproduce this issue. I'll set the ticket to invalid until I can report further informations to this bug. Please excuse for this ticket.
#2 Updated by Redmine Admin about 18 years ago
- Resolution deleted (
invalid) - Status changed from Closed to Feedback
Now I can reproduce the mentioned bug.
1. I create a mapcomposition with some layers an a legend
2. Save the project
3. reload the project and the following error occurs:
... error occured while parsing element at line 349 column 56 ...
The error is caused by the <vectorlegend_6> ... </vectorlegend_6> of the file test.qgs. When I delete this block I'm able to load the project and the legend is deleted from my mapcomosition. Take a look at the attached file test.qgs.
#3 Updated by Gavin Macaulay - about 18 years ago
- Status changed from Feedback to Open
The problem seems to be with the '=' character on line 349. This is probably conflicting with XML's use of '=' as a reserved character.
#4 Updated by Gavin Macaulay - about 18 years ago
- Status changed from Open to In Progress
#5 Updated by Gavin Macaulay - about 18 years ago
- Status changed from In Progress to Closed
- Resolution set to fixed
Fixed in SVN .
There were several characters that the XML didn't like in a node name, but which postgres layers had in them. Layer ID's are now forced to consist only of letters, characters and underscores.
#6 Updated by Gavin Macaulay - about 18 years ago
PS. Existing projects can be fixed by finding the <layers> line, then editing any subsequent <layer_...> lines and replacing the =, (, and ) characters with an underscore (_).
#7 Updated by Anonymous about 15 years ago
Milestone Version 0.8 deleted