News & Rumors: 21. Dezember 2006,

Datenverlust mit Cocoa leicht gemacht

Macnotes
Macnotes - Logo

Noch bevor der „Month of Apple Bugs“ begonnen hat, präsentiert ein Autor auf MacOSXhints eindrucksvoll, wie man mittels des Cocoa-Sichern-Dialogs komplette Ordner überschreiben kann. Er demonstriert am Beispiel von Text Edit, wie man einen Ordner mit einer einfachen Textdatei überschreiben kann.

Cocoa-Applikationen ist es generell erlaubt, Ordner mit Dateien zu überschreiben. Der Grund dafür sind die Paket-Dateitypen von Mac OS X, die vom Finder als einfache Dateien dargestellt werden, aber eigentlich Ordner sind. Das einfachste Beispiel dafür sind Mac-OS-X-Programme, die auf der Dateiendung „app“ enden. Schlimmerweise ist das Verhalten des Datei-Ersetzen-Dialogs zwischen Carbon- und Cocoa-Programmen nicht konsistent. Bei Cocoa ist „Ersetzen“ die Voreinstellung, im Gegensatz zu Carbon, wo „Abbrechen“ die Voreinstellung ist. Hat man einen nervösen Finger auf der Enter-Taste, hat man blitzschnell einen Ordner überschrieben.

Dateirechte manipulieren

Dieser Effekt lässt sich sogar noch weiter ausnutzen. So ist es möglich mit Text Edit direkt ausführbare Terminal-Scripts zu erstellen. Jeder Ordner bekommt standardmäßig die Unix-Ausführungsrechte gesetzt, damit man ihn öffnen und darin weiter navigieren kann. Wird der Ordner durch eine Datei ersetzt, so erbt diese automatisch die Ausführungsrechte des Ordners und ist damit im Terminal ausführbar.

Zukünftig sollte man also besser zweimal hinschauen, bevor man eine möglicherweise vermeintliche Datei ersetzt. Am einfachsten wäre es, wenn Apple wieder das Verhalten des Sichern-Dialogs des klassischen Mac OS implementiert. Dort ändert sich der Sichern-Button in einen Öffnen-Button sobald man auf einen Ordner navigiert. Im Sinne der Konsistenz bei der Bedienung ist es außerdem mehr als wünschenswert, dass Apple das Verhalten der unterschiedlichen „Welten“ einander angleicht.



Datenverlust mit Cocoa leicht gemacht
3,83 (76,67%) 12 Bewertungen

Ähnliche Beiträge

ARM-PCs kommen zurück: Microsoft und Qualcomm arbe... Prinzipiell ist Windows plattformunabhängig, läuft derzeit aber nur auf Intel-Prozessoren. Windows 8 lief auch auf ausgewählten ARM-CPUs und da will M...
Super Mario Run: Kopierschutz verlangt permanente ... Auf der iPhone-7-Keynote wurde etwas angekündigt, was in der Unternehmensgeschichte von Nintendo als eine Art Sensation angesehen werden könnte: Super...
Bluetooth 5: Massive Verbesserungen für neuen Drah... Bluetooth ist den meisten für die Verbindung von Kopfhörern mit Smartphones bekannt, dabei ist es darüber hinaus wesentlich vielseitiger. Die Bluetoot...
Keine News mehr verpassen! Unsere App für iOS und Android mit praktischer Push-Funktion.










Zuletzt kommentiert



Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>