I can confirm now that the missing <mtime> causes the crash. Added this
in the old rhythmdb.xml file and everything works as before. For people
facing the same problem, here is my script to perform on the file
(supposes perl and File::Util package installed). Don't forget to take a
backup and I take no responsibility of the result. This worked for me,
but YMMV.

script:

use strict;
use File::Util qw(:all); # module to find and navigate files and directories


if ($#ARGV != 1) {

        print << 'EOF';

mtime.pl
========
Will add mtime in rhythmdb.xml file

Arguments
---------

in: the name of the input file
out: the name of the output file


EOF

}
else {

        my $source_file = $ARGV[0];
        my $target_file = $ARGV[1];


        my $f = File::Util->new();  
        
        # check if given files exists
        unless ($f->existent($source_file)) {print "The source file 
$source_file doesn't exist!\n"; exit;}

        # read the file
        my $fh_in;
        my $fh_out;

        open $fh_in, "<", $source_file or die ("Could not open file 
$source_file for reading.");
        open $fh_out, ">", $target_file or die ("Could not open file 
$target_file for writing.");

        while (my $line = <$fh_in>) {

                print $fh_out $line;

                #print $line;

                if ($line =~
m/\s*\<location\>file:\/\/(.+)\<\/location\>\n*/){

                        my $file = $1;

                        $file =~ s/%([0-9A-Fa-f]{2})/chr(hex($1))/eg;

                        print $file . "\n";

                        if ($f->existent($file)) {

                                print $fh_out "    <mtime>" . 
$f->last_modified($file) . "</mtime>\n";
                                
                        }

                }

        }
        

        close $fh_in;
        close $fh_out;

        exit;

}

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to rhythmbox in Ubuntu.
https://bugs.launchpad.net/bugs/1630455

Title:
  rhythmbox crashes soon after being start in Ubuntu 16.04.1 with
  rhythmdb_entry_get_entry_type: assertion 'entry != NULL' failed

Status in rhythmbox package in Ubuntu:
  Confirmed

Bug description:
  For a few years, I used Ubuntu 12.04. I used rhythmbox in it all these
  years, it worked fine. Some library was collected.

  Then I upgraded to 14.04, and to 16.04 right away.

  $ cat /etc/lsb-release 
  DISTRIB_ID=Ubuntu
  DISTRIB_RELEASE=16.04
  DISTRIB_CODENAME=xenial
  DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"

  After I start rhythmbox, in a few seconds it crashes, even if I do
  nothing. Here is the output:

  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack:
  Add to Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): Gtk-WARNING **: Duplicate child name in GtkStack: Add to 
Playlist

  
  (rhythmbox:22810): RhythmDB-CRITICAL **: rhythmdb_entry_get_entry_type: 
assertion 'entry != NULL' failed
  Ошибка сегментирования (сделан дамп памяти)

  
  rhythmbox version is 3.3-1ubuntu7.

  I'm filing this bug here by hand because aport does not see these
  crashes for some reason.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rhythmbox/+bug/1630455/+subscriptions

-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to