View Issue Details

IDProjectCategoryView StatusLast Update
0001201EresseaGeneralpublic2009-09-09 07:29
Reporterthewhitewolf Assigned ToEnno  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Summary0001201: CR-escaping von Eressea-server falsch
Description

ich schickte am 16.juni 2007 befehle ein (für report 528).

darunter folgende zeilen (unwichtige zwischenzeilen entfernt):

EINHEIT 6s9v // #ifregion 'Steeds\' Savanna' { NACH \ NW : RESERVIERE 30 Eisen }

man beachte das escapte einfache hochkomma. (so heißt die region).

Im CR des reports 528 finden sich dann folgende zeilen (unwichtige zwischenzeilen wieder weg gelöscht):

EINHEIT 316579 COMMANDS "// #ifregion 'Steeds' Savanna' { NACH NW : RESERVIERE 30 Eisen }"

man beachte, dass das ' nicht escaped ist. die zeile sollte wohl "// #ifregion 'Steeds\' Savanna' { NACH NW : RESERVIERE 30 Eisen }" lauten

TagsNo tags attached.
Factionhtar
Game
Report528

Activities

darcduck

darcduck

2008-01-08 16:06

reporter   ~0003159

workaround (denke ich):

// #ifregion Steeds'~Savanna { NACH \ NW : RESERVIERE 30 Eisen }

In Eressea Befehlen ist laut Enno auch erlaubt:

Benenne Einheit "Steeds' Friend" Beschreibe Einheit 'Seine Füße sind 10" lang.'

Vorlage nimmt aber leider nur einfache Hochkommas oder die ~ Syntax.

Wenn man den Benenne Befehl aber mit Vorlage so gibt, schreibt volage folgendes:

Benenne Einheit Steeds'~Friend

Grüsse

Ralf

Enno

Enno

2008-01-08 21:50

administrator   ~0003162

Es waere toll wenn das nochmal jemand in einer aktuellen Auswertung testet und mir diesen bugreport hier erweitert (Einheit/Partei/Runde)

Enno

Enno

2008-02-05 21:10

administrator   ~0003258

Das ist schwierig oder aufwaendig. Escaping wird nicht wirklich vernuenftig unterstuetzt vom Eressea-Server. Beim Einlesen der Befehle wird daraus zwar ifregion 'Steeds\' Savanna' im Speicher (mit einfachem ) aber schon das Parsing der Tokens scheitert daran dass es sich nicht um \ kuemmert. Nun muss man zum Glueck in den // Kommentaren keine Tokens parsen, aber beim schreiben (des CR, nicht des NR) muesste man den \ wohl in \ umwandeln. Das hiesse, ich kann nicht den Befehl selbst rausschreiben, sondern muss ihn in einem Buffer praeparieren - und das wohl mit allen machen, oder zumindest schauen, ob sie ein \ enthalten.

Alle in allem ist das unbefriedigend, und ich wuerde mir wuenschen, dass man das nicht braucht. Vorschlaege zur Loesung werden gern angenommen, aber am besten auf der eressea-client Mailingliste.

Enno

Enno

2008-04-17 15:59

administrator   ~0003418

Last edited: 2008-04-17 15:59

Diese Woche (Report 567) hat es da ganz akut Probleme: Wegen eines quoting-Fehlers kann das Datenfile nicht eingelesen werden. Ich habe das von Hand reparieren muessen, aber so geht's natuerlich nicht.

Enno

Enno

2008-06-04 16:47

administrator   ~0003534

Original report still broken in turn 572

Enno

Enno

2009-07-16 20:30

administrator   ~0003847

In Zukunft werden im CR nur noch die " escaped. D.h. aus \" muss der Parser " machen, aus \" wird \" und \' bleibt \'. Das bisherige Verhalten war Scheisse.

Issue History

Date Modified Username Field Change
2007-06-24 14:53 thewhitewolf New Issue
2007-06-24 14:53 thewhitewolf Partei/Faction => htar
2007-06-24 14:53 thewhitewolf Report No. => 528
2008-01-08 16:06 darcduck Note Added: 0003159
2008-01-08 21:50 Enno Note Added: 0003162
2008-02-05 07:33 Enno Status new => assigned
2008-02-05 07:33 Enno Assigned To => Enno
2008-02-05 21:10 Enno Note Added: 0003258
2008-04-17 15:59 Enno Note Added: 0003418
2008-04-17 15:59 Enno Note Edited: 0003418
2008-06-04 16:47 Enno Note Added: 0003534
2009-07-16 20:30 Enno Note Added: 0003847
2009-07-16 20:30 Enno Status assigned => resolved
2009-07-16 20:30 Enno Resolution open => fixed
2009-09-09 07:29 Xolgrim Status resolved => closed