Bug 252812

Summary: won't ZIP/TAR this directory (works on other directories)
Product: [Applications] ark Reporter: James <bjlockie>
Component: generalAssignee: Harald Hvaal <metellius>
Status: RESOLVED DUPLICATE    
Severity: normal CC: rakuco
Priority: NOR    
Version: 2.15   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description James 2010-09-30 00:52:41 UTC
Version:           2.15 (using KDE 4.5.1) 
OS:                Linux

I am trying to compress a directory as ZIP/TAR and it stops at creating a *.tar.gz.arkWriting file.

Reproducible: Always

Steps to Reproduce:
RMB click the directory in Dolphin and select Compress->As ZIP/TAR Archive.

Actual Results:  
A *.tar.gz.arkWriting file is created.

Expected Results:  
A *.tar.gz file should be created.

The *.tar.gz.arkWriting file can be opened in Ark but it seems to contain an incomplete copy of the uncompressed directory.
Comment 1 Raphael Kubo da Costa 2010-09-30 06:37:51 UTC
Well, what's the directory's full path? Does it still happen if you rename it?
Comment 2 James 2010-09-30 16:30:52 UTC
The path is /storage/school/Algonquin
I tried renaming Algonquin to A and copying the directory to A2.
The KDE notifications always say "Adding a file (finished) and the *.tar.gz.arkWriting file is left around.
I can manually run tar and gzip.

 $ tar -cf /storage/school/Algonquin.tar /storage/school/Algonquin
tar: Removing leading `/' from member names

$ gzip /storage/school/Algonquin.tar

Is there a log file somewhere?
Comment 3 Raphael Kubo da Costa 2010-09-30 20:18:26 UTC
There's no log file, but if you run Ark from a terminal you may see some debugging output (especially if you have debug symbols and/or a debug build).

Does the problem also happen if you create, say, a ZIP file, or if you move Algonquin to /tmp?
Comment 4 James 2010-09-30 22:55:04 UTC
I copied the directory to /tmp and it creates a larger Algonquin.tar.gz.arkWriting but still fails.

Compress->As ZIP Archive seems to be complete.

I tried Compress->Compress To and selected a tar file and it failed.
It created a Algonquin.tar.arkWriting.

Running from a terminal doesn't show much:
ark(11448): couldn't create slave: "Unable to create io-slave:
klauncher said: Unknown protocol ''.
" 
ark(11448): couldn't create slave: "Unable to create io-slave:
klauncher said: Unknown protocol ''.
" 



I tried to recompile Ark with debugging but maybe I did it wrong because there is no more output.
Comment 5 Raphael Kubo da Costa 2010-09-30 22:59:15 UTC
(In reply to comment #4)
> I copied the directory to /tmp and it creates a larger
> Algonquin.tar.gz.arkWriting but still fails.

Hmm. Is there anything special in that directory (files with non-UTF8 encodings, for example)? What if you try to compress some subdirectory in there?

> I tried to recompile Ark with debugging but maybe I did it wrong because there
> is no more output.

Have you compiled it passing -DCMAKE_BUILD_TYPE=DebugFull to cmake? You probably need to activate debug area 0 by running kdebugdialog.
Comment 6 James 2010-10-01 06:31:38 UTC
I still can't get debugging to work. :-(

I did narrow it down to a subdirectory (some directories work but not this one).
Unfortunately that directory has tons of subdirectories. :-(
Trying to compress them all would take forever.

I found one non-UTF8 filenames?
$ find . | perl -ne 'print if /[^[:ascii:]]/'
The Technical Writerâs World.ppt

The Technical Writerâs World.ppt

Yay, it finishes now that I renamed one file. :-)
Comment 7 Raphael Kubo da Costa 2010-10-13 01:32:25 UTC
Well, it looks like it's a broken encoding issue. Qt4 and KDE4 currently expect Unicode file names, so compression fails with that file/directory you mentioned.

From Ark's side, the *arkWriting file should have been removed, and an error message should be shown. However, we cannot compress that file/directory -- it first needs to be converted to an appropriate encoding. The `convmv' utility might help you with that.

Thanks for the report!

*** This bug has been marked as a duplicate of bug 165044 ***
Comment 8 Raphael Kubo da Costa 2010-10-13 02:30:33 UTC
SVN commit 1185340 by rkcosta:

[libarchive] Remove the temporary file when compression fails.

CCBUG: 252812

 M  +3 -0      libarchivehandler.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1185340
Comment 9 Raphael Kubo da Costa 2010-10-13 02:30:46 UTC
SVN commit 1185343 by rkcosta:

[libarchive] Show an error message when compression fails.

CCBUG: 252812

 M  +4 -0      libarchivehandler.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1185343
Comment 10 Raphael Kubo da Costa 2010-10-13 02:40:58 UTC
SVN commit 1185344 by rkcosta:

[libarchive] Remove the temporary file when compression fails.

Backport of r1185340.

CCBUG: 252812

 M  +3 -0      libarchivehandler.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1185344