After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 321436 - Detect FAT filesystem and enable strip special chars by default
Detect FAT filesystem and enable strip special chars by default
Status: RESOLVED FIXED
Product: sound-juicer
Classification: Applications
Component: ripping
2.14.x
Other All
: Normal normal
: ---
Assigned To: Sound Juicer Maintainers
Sound Juicer Maintainers
: 380727 414859 455433 474255 505072 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-11-14 14:11 UTC by Charles Terrell
Modified: 2008-01-02 21:25 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12



Description Charles Terrell 2005-11-14 14:11:59 UTC
Please describe the problem:
If the title of a track contains a colon or a question mark, SJ will freeze when it starts to rip that track.  It 
will stay frozen for hours or days or until it receives a force-quit.  Removing the offending punctuation 
mark from the title causes the rip to proceed normally.

Steps to reproduce:
1. Try to rip a CD where a track name contains a colon or question mark.
2. Watch it freeze when it gets to that track.
3. Remove question mark or change colon to a dash and watch it rip normally.


Actual results:


Expected results:


Does this happen every time?
Yes

Other information:
Sound Juicer also tends to behave badly if there are question marks or colons in the album title or artist.  
I'm using Ubuntu Linux if that helps.
Comment 1 Charles Terrell 2005-11-14 19:21:53 UTC
Also:  The target format is FLAC.
Comment 2 Ross Burton 2005-11-15 08:44:00 UTC
Are you writing to a FAT or ext3 filesystem?  If you are writing to FAT, you
need to select "Strip Special Characters".  Really I should find a way of
auto-detecting this.
Comment 3 Ross Burton 2006-03-19 16:57:41 UTC
Setting to NEEDINFO.
Comment 4 Charles Terrell 2006-03-19 20:24:17 UTC
Sorry, I didn't notice your comments from 11/15 because the email notification got lost in all the spam...

The FLAC files are being saved on a vfat partition.  I'll try "strip special characters" next time I rip a CD.
Comment 5 Florent Mertens 2006-11-25 01:38:57 UTC
The exact same problem still exist with sound-juicer 2.16.1.
The difference is that now sound-juicer crash with a segfault.

More info here :
https://launchpad.net/products/sound-juicer/+bug/72218
Comment 6 James "Doc" Livingston 2006-11-25 02:14:58 UTC
gnome_vfs_volume_get_filesystem_type() can be used to determine what file system it is being saved to, it's just need a map of what characters are illegal on various file systems.
Comment 7 Sebastien Bacher 2006-11-25 13:44:28 UTC
Backtrace of the crash with 2.16.1:

(sound-juicer:9705): GLib-CRITICAL **: g_source_remove: assertion `tag > 0' failed

Program received signal SIGSEGV, Segmentation fault.

Thread NaN (LWP 9705)

  • #0 wcslen
    from /lib/tls/i686/cmov/libc.so.6
  • #1 wcsrtombs
    from /lib/tls/i686/cmov/libc.so.6
  • #2 vfprintf
    from /lib/tls/i686/cmov/libc.so.6
  • #3 vasprintf
    from /lib/tls/i686/cmov/libc.so.6
  • #4 IA__g_vasprintf
    at gprintf.c line 311
  • #5 IA__g_strdup_vprintf
    at gstrfuncs.c line 188
  • #6 IA__gtk_message_dialog_new
    at gtkmessagedialog.c line 508
  • #7 on_about_activate
  • #8 IA__g_cclosure_marshal_VOID__POINTER
    at gmarshal.c line 601
  • #9 IA__g_closure_invoke
    at gclosure.c line 490
  • #10 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #11 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #12 IA__g_signal_emit
    at gsignal.c line 2243
  • #13 sj_extractor_new
  • #14 marshal_VOID__MINIOBJECT
    at gstbus.c line 159
  • #15 IA__g_closure_invoke
    at gclosure.c line 490
  • #16 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #17 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #18 IA__g_signal_emit
    at gsignal.c line 2243
  • #19 gst_bus_async_signal_func
    at gstbus.c line 901
  • #20 gst_bus_source_dispatch
    at gstbus.c line 627
  • #21 IA__g_main_context_dispatch
    at gmain.c line 2045
  • #22 g_main_context_iterate
    at gmain.c line 2677
  • #23 IA__g_main_loop_run
    at gmain.c line 2881
  • #24 gst_bus_poll
    at gstbus.c line 861
  • #25 sj_extractor_extract_track
  • #26 filepath_parse_pattern
  • #27 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #28 IA__g_closure_invoke
    at gclosure.c line 490
  • #29 signal_emit_unlocked_R
    at gsignal.c line 2440
  • #30 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #31 IA__g_signal_emit
    at gsignal.c line 2243
  • #32 IA__gtk_button_clicked
    at gtkbutton.c line 889
  • #33 gtk_real_button_released
    at gtkbutton.c line 1484
  • #34 IA__g_cclosure_marshal_VOID__VOID
    at gmarshal.c line 77
  • #35 g_type_class_meta_marshal
    at gclosure.c line 567
  • #36 IA__g_closure_invoke
    at gclosure.c line 490
  • #37 signal_emit_unlocked_R
    at gsignal.c line 2370
  • #38 IA__g_signal_emit_valist
    at gsignal.c line 2199
  • #39 IA__g_signal_emit
    at gsignal.c line 2243
  • #40 IA__gtk_button_released
    at gtkbutton.c line 881
  • #41 gtk_button_button_release
    at gtkbutton.c line 1377
  • #42 _gtk_marshal_BOOLEAN__BOXED
    at gtkmarshalers.c line 84
  • #43 g_type_class_meta_marshal
    at gclosure.c line 567
  • #44 IA__g_closure_invoke
    at gclosure.c line 490
  • #45 signal_emit_unlocked_R
    at gsignal.c line 2478
  • #46 IA__g_signal_emit_valist
    at gsignal.c line 2209

Comment 8 Bastien Nocera 2007-03-05 11:36:21 UTC
This should probably go in libjuicer.
Comment 9 Ross Burton 2007-09-07 07:54:21 UTC
*** Bug 474255 has been marked as a duplicate of this bug. ***
Comment 10 Ross Burton 2007-09-07 07:55:16 UTC
#474255 is about writing to a NTFS file system, where multibyte characters need special treatment.
Comment 11 Christoph 2007-11-24 02:04:52 UTC
Sorry for not being able to contribute to the fixing of this bug, except by telling you that it is still there in my sound juicer version (2.20.0, from the ubuntu repos, installed on a xubuntu 7.10)

i had the problem with a fat32 file system and the colon :

by the way, bash and thunar have somehow the same problem: they cannot copy files with : or ? to a fat32 file system. bash says: "gnome_vfs_volume_get_filesystem_type()"
however, bash and thunar give an error message instead of crashing. maybe you can make use of the mechanisms they are using? or maybe there people are working on a real solution there and you can use synergies?

Good luck and thanks for the nice application!
Comment 12 Ross Burton 2007-12-19 09:08:01 UTC
For anyone who decides to look at this: there is magic in sj-extracting.c to strip special characters, this needs to be extended to take a file system type and add in a set of characters which are not allowed for that file system.
Comment 13 Ross Burton 2007-12-19 09:51:59 UTC
*** Bug 414859 has been marked as a duplicate of this bug. ***
Comment 14 Ross Burton 2007-12-23 12:08:39 UTC
*** Bug 505072 has been marked as a duplicate of this bug. ***
Comment 15 Ross Burton 2007-12-23 14:23:58 UTC
Note that this is being worked on by a GHOP participant.
Comment 16 Ross Burton 2007-12-24 16:21:00 UTC
Fixed in svn, thanks Carl-Anton and GHOP.
Comment 17 Luca Cavalli 2007-12-26 00:30:22 UTC
If writing to a vfat file system is the cause (as suggested by Christophe) this will also fix bug #380727.
Comment 18 Ross Burton 2007-12-27 16:15:25 UTC
*** Bug 380727 has been marked as a duplicate of this bug. ***
Comment 19 Ross Burton 2008-01-02 21:25:03 UTC
*** Bug 455433 has been marked as a duplicate of this bug. ***