Tagger icon indicating copy to clipboard operation
Tagger copied to clipboard

failed to write tags but no warning

Open vladak opened this issue 11 years ago • 3 comments

I tried to write some tags to files in a directory on SMB server which I don't have write permissions to and the tags did not get written (which is not surprising) but Tagger did not get any warning about the failure.

vladak avatar Apr 07 '13 17:04 vladak

I never tried it on SMB server before, but I will look into it when I have time

Bilalh avatar Apr 07 '13 23:04 Bilalh

I tried to reproduce the issue on local disk with a directory created under ~/Desktop from which I stripped write permissions (chmod -w ~/Desktop/tagtest). Observing Tagger with dtruss (https://github.com/joyent/dtruss-osx/blob/master/dtruss) I can see this:

thread_selfid(4419895296, 536576, 24863)         = 2347726 0
__disable_threadsignal(1, 0, 0)      = 0 0
workq_kernreturn(1, 4300018144, 0)       = 0 0
workq_kernreturn(1, 4300018096, 0)       = 0 0
getattrlist("/Users/vlad/Desktop/tagtest/1-15 Bella.mp3\0", 0x7FFF5FBFE7A0, 0x7FFF5FBFE3D0)      = 0 0
geteuid(140734799798736, 0, 140734799798976)         = 501 0
getattrlist("/Users/vlad/Desktop/tagtest/1-15 Bella.mp3\0", 0x7FFF5FBFC9F8, 0x7FFF5FBFC670)      = 0 0
geteuid(140734799792640, 0, 140734799793720)         = 501 0
geteuid(140734799798800, 0, 140734799798944)         = 501 0
geteuid(140734799798896, 0, 140734799799016)         = 501 0
geteuid(140734799795936, 0, 140734799796104)         = 501 0
fsgetpath(140734799798040, 1024, 140734799796096)        = 52 0
geteuid(140734799796752, 0, 140734799797312)         = 501 0
getattrlist("/.vol/234881026/3699929\0", 0x7FFF5FBFCBB0, 0x7FFF5FBFBF40)     = 0 0
geteuid(140734799795840, 0, 140734799795960)         = 501 0
geteuid(140734799789024, 0, 140734799789584)         = 501 0
getattrlist("/.vol/234881026/3699929\0", 0x7FFF5FBFAD80, 0x7FFF5FBFA0E0)     = 0 0
write_nocancel(2, "TagLib: \0", 8)       = 8 0
write_nocancel(2, "MPEG::File::save() -- File is read only.\0", 40)      = 40 0
write_nocancel(2, "\n\0", 1)         = 1 0

So something (a library used by Tagger ?) recognizes the file as read only but the error does not propagate up.

vladak avatar Apr 08 '13 19:04 vladak

thanks for debugging

Bilalh avatar Apr 08 '13 21:04 Bilalh