Erstellt vor 5 Jahren

Zuletzt geändert vor 5 Jahren

#1314 closed Fehler (fixed)

Ueberschreiben der internen Bemerkung bei (Angebot|Auftrag|Lieferschein|Rechnung)

Erstellt von: wulf@… Verantwortlicher: p.reetz@…
Priorität: normal Meilenstein:
Komponente: kivitendo ERP Version: 2.6.0
Schweregrad: kritisch Stichworte: Verkauf
Beobachter: m.bunkus@…, s.schoeling@…, wulf@…

Beschreibung

Run-Condition:

Beim Aufruf der Funktion bin/mozilla/oe.pl->save() wird
wenn das Formular frisch via Verkauf->Berichte->* aufgerufen
wird, das Feld "Interne Bemerkung" nach dem Speichern mit
dem Wert des Kundendatensatzes 'customer.notes'
ueberschrieben, auch wenn es bereits Dokumentspezifische
Werte enthaelt. Womit beim naechsten Speichern die Werte
verlohren sind.
Ist 'customer.notes' Null, ist natuerlich
anschliessend auch die Interne Bemerkung leer.

Die Funktion svae() wird auch von der Funktion e_mail()
aufgerufen, so dass z.B. beim Erneuten Senden eines Dokuments die
alten [email]-Bemerkungen verlohren gehen.

Beim erneuten Aufruf (also nach bereits gespeichertem
Formular) taucht der Fehler nicht auf.


Verantwortlich ist dafuer SL::IS->get_customer()
welche von bin/mozilla/arap.pl->check_name() aufgerufen
wird, je nach Zustand des Formulars.

Entwicklerversion:

in der Entwicklerversion tritt das Problem nicht auf

commit 4ee4b7ff5eac745c87b85004a1f63ff13e09f6c9
Merge: 168cc17... a2d5bba...
Author: Sven Schöling <s.schoeling@…>
Date: Wed Dec 30 13:04:59 2009 +0100

Workeraound/Fix?:

Anhaengender patch (SL/IS.pm) loest das Problem in der
aktuelllen Stable

commit 72831aef3b5dadc7cb2ee5e166348bb06e15e8e7
Author: Moritz Bunkus <m.bunkus@…>
Date: Tue Jun 2 15:08:21 2009 +0000

Anhänge (1)

lx-intnotes.diff (753 Byte) - hinzugefügt von wulf@… vor 5 Jahren.
verhindert ueberschreiben von intnotes

Alle Anhänge herunterladen als: .zip

Änderungshistorie (7)

Geändert vor 5 Jahren durch wulf@…

verhindert ueberschreiben von intnotes

comment:1 Geändert vor 5 Jahren durch wulf@…

  • Beobachter wulf@… hinzugefügt

comment:2 Geändert vor 5 Jahren durch s.schoeling@…

  • Beobachter s.schoeling@… hinzugefügt

Lieb gemeint, aber bitte niemals $form->{...} Inhalt ohne DB Quoting in ein SQL Query interpolieren. Das öffnet Tür und Tor für Crashes im besten Fall (Wenn jemand zum Beispiel in die Bemerkungen einen Metallstück mit 45°2'23" Winkel eingibt) und SQL Injection im schlimmsten Fall.

comment:3 Geändert vor 5 Jahren durch wulf@…

Hallo Sven,

Lieb gemeint, aber bitte niemals $form->{...} Inhalt ohne DB
Quoting in ein SQL Query interpolieren.

stimmt das war schlampig.

Ist ja eh ein Hotfix gewesen, denn das eitgentliche Problem sitzt
meiner Meinung nach noch davor.

Soll ich noch einen Patch machen, oder willste gleich
selber, oder interessiert der Bug nicht?

Gruesse Wulf+

P.S.
bin selbst jetzt auf eine Entwicklerversion hoch gegangen
und damit das Problem auch los.

comment:4 Geändert vor 5 Jahren durch s.schoeling@…

Ich erinnere mich dunkel, dass der Fix in der unstable von mir stammt, aber ich müsste selber suchen um den wiederzufinden.

Ich habe leider im Moment keine Zeit mich darum zu kümmern, aber wenn Du magst schau dochmal mit git bisect nach welcher patch das gefixt hat.

comment:5 Geändert vor 5 Jahren durch wulf@…

Ich habe leider im Moment keine Zeit mich darum zu

im Moment, klingt charmant ;-)

kümmern, aber wenn Du magst schau dochmal mit git bisect
nach welcher patch das gefixt hat.

mit bisect habe ich keine Uebung. In Deinen Logs ist mir
nichts aufgefallen. Vielleicht suche ich noch mal danach mit
etwas mehr muse.
Ich wuerde eigentlich schon unterstuetzen, grobe Fehle auch
Rueckwirkend in der Stable zu fixen.

Danke Fuer die Antworten

comment:6 Geändert vor 5 Jahren durch m.bunkus@…

  • Lösung auf fixed gesetzt
  • Status von new nach closed, m.bunkus@linet-services.de geändert
Hinweis: Hilfe zur Verwendung von Tickets finden Sie in TracTickets.