[Digikam-devel] [digikam] [Bug 366036] New: Sidecar file is not written when image is symlink to write-protected directory

Thomas Reifenberger via KDE Bugzilla bugzilla_noreply at kde.org
Sun Jul 24 14:14:43 BST 2016


https://bugs.kde.org/show_bug.cgi?id=366036

            Bug ID: 366036
           Summary: Sidecar file is not written when image is symlink to
                    write-protected directory
           Product: digikam
           Version: 5.0.0
          Platform: Archlinux Packages
                OS: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: NOR
         Component: Metadata-Sidecar
          Assignee: digikam-devel at kde.org
          Reporter: tspam+bugs.kde.org at rfnbrgr.de

Sidecar file management fails for images that are actually symlinks to
write-protected files in write-protected folders. This used to work in digikam
4.x.

Note that the sidecar file is correctly written next to the symlink if the
folder containing the target of the symlink is writeable. This is strange, as
nothing is supposed to be written to that folder anyway.

Reproducible: Always

Steps to Reproduce:
- Configure metadata settings:
-- Check "Read from sidecar files"
-- Check "Write to sidecar files"
-- Select "Write to XMP sidecar only"

- Start with a raw image "test.CR2" in an empty folder. Then:
$ chmod a-w test.CR2
$ mkdir subdir
$ mv test.CR2 subdir/
$ chmod a-w subdir
$ ln -s subdir/test.CR2 link_to_test.CR2

- Now open the folder containing the symlink in digikam.
- Change metadata of the symlink (not the original file in the subfolder!),
e.g. Rating or Tags.
- Select "Album > Write Metadata to Images"

Actual Results:  
Nothing, not even an error message.

Expected Results:  
A new sidecar file "link_to_test.CR2.xmp" with the changed metadata is present

Relevant console output:

digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> Title:  QMap()
digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> Comment:  QMap()
digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> Pick Label:  0
digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> Color Label:  0
digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> Rating: +++++++++++ 1 
digikam.general: Writting tags
digikam.general: -------------------------- New Keywords ("Foo Bar")
digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> Read Iptc Keywords: 
() 
digikam.metaengine: "/path/to/test/link_to_test.CR2"  ==> New Iptc Keywords: 
("Foo Bar") 
digikam.metaengine: xmlACDSee "<Categories><Category
Assigned=\"0\">Country<Category Assigned=\"1\">Foo
Bar</Category></Category></Categories>"
digikam.metaengine: filePath "/path/to/test/link_to_test.CR2" is a symlink.
Using target "/path/to/test/subdir/test.CR2"
digikam.metaengine: Dir ' "/path/to/test/subdir" ' is read-only. Metadata not
saved.
digikam.general: One job is done
digikam.general: List of Pending Jobs is empty
digikam.general: Event is dispatched to desktop notifier through DBUS
digikam.general: Cancel Main Thread
digikam.general: Cancel Main Thread

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Digikam-devel mailing list