[grip] fixed "no rip speed is indicated in the application" (#804180)

Adrian Reber adrian at fedoraproject.org
Tue Mar 27 11:17:34 UTC 2012


commit 8eb1ff3848c3bb6e70b643829c2339eda26b78e4
Author: Adrian Reber <adrian at lisas.de>
Date:   Tue Mar 27 13:17:27 2012 +0200

    fixed "no rip speed is indicated in the application" (#804180)
    
    - removed a few warnings
    - fixed a segfault

 grip.cleanup-warnings.patch                        |  110 ++++++++++++++++++++
 ...ed-is-indicated-in-the-application-804180.patch |   20 ++++
 grip.segfault-if-cd-disappeared.patch              |   17 +++
 grip.spec                                          |   13 ++-
 4 files changed, 159 insertions(+), 1 deletions(-)
---
diff --git a/grip.cleanup-warnings.patch b/grip.cleanup-warnings.patch
new file mode 100644
index 0000000..3d9eae0
--- /dev/null
+++ b/grip.cleanup-warnings.patch
@@ -0,0 +1,110 @@
+--- grip-3.2.0/src/rip.c	2012-03-27 13:13:06.832227327 +0200
++++ grip-3.2.0/src/rip.c.new	2012-03-27 13:13:14.732240048 +0200
+@@ -1517,9 +1517,10 @@
+       ginfo->rippid=fork();
+       
+       if(ginfo->rippid==0) {
+-	int i;
+ 	CloseStuff(ginfo);
+-	i=nice(ginfo->ripnice);
++        errno=0;
++        if (nice(ginfo->ripnice) == -1 && errno)
++          Debug(_("nice() failed\n"));
+ 	execv(ginfo->ripexename,char_args);
+ 	
+ 	LogStatus(ginfo,_("Exec failed\n"));
+@@ -1553,7 +1554,6 @@
+   int paranoia_mode;
+   int dup_output_fd;
+   FILE *output_fp;
+-  int i;
+ 
+   ginfo=(GripInfo *)arg;
+ 
+@@ -1574,7 +1574,9 @@
+   
+   ginfo->rip_smile_level=0;
+   
+-  i=nice(ginfo->ripnice);
++  errno=0;
++  if (nice(ginfo->ripnice) == -1 && errno)
++    Debug(_("nice() failed\n"));
+ 
+   dup_output_fd=dup(GetStatusWindowPipe(ginfo->gui_info.rip_status_window));
+   output_fp=fdopen(dup_output_fd,"w");
+@@ -1757,10 +1759,11 @@
+   ginfo->mp3pid[cpu]=fork();
+   
+   if(ginfo->mp3pid[cpu]==0) {
+-    int i;
+     CloseStuff(ginfo);
+     setsid();
+-    i=nice(ginfo->mp3nice);
++    errno=0;
++    if (nice(ginfo->mp3nice) == -1 && errno)
++      Debug(_("nice() failed\n"));
+     execv(ginfo->mp3exename,char_args);
+     _exit(0);
+   }
+--- grip-3.2.0/src/cdplay.c	2012-03-27 13:13:06.835227332 +0200
++++ grip-3.2.0/src/cdplay.c.new	2012-03-27 13:13:18.395245946 +0200
+@@ -148,21 +148,15 @@
+ static void DoLookup(void *data)
+ {
+   GripInfo *ginfo;
+-  gboolean discdb_found=FALSE;
+ 
+   ginfo=(GripInfo *)data;
+ 
+   if(!DiscDBLookupDisc(ginfo,&(ginfo->dbserver))) {
+     if(*(ginfo->dbserver2.name)) {
+-      if(DiscDBLookupDisc(ginfo,&(ginfo->dbserver2))) {
+-        discdb_found=TRUE;
++      if(DiscDBLookupDisc(ginfo,&(ginfo->dbserver2)))
+         ginfo->ask_submit=TRUE;
+-      }
+     }
+   }
+-  else {
+-    discdb_found=TRUE;
+-  }
+ 
+   if(ginfo->ddata.data_id3genre==-1)
+     ginfo->ddata.data_id3genre=DiscDB2ID3(ginfo->ddata.data_genre);
+@@ -272,7 +266,6 @@
+   GtkWidget *track_list;
+   GtkTreeViewColumn *column;
+   int tot_width=0;
+-  PangoLayout *layout;
+ 
+   track_list=ginfo->gui_info.track_list;
+ 
+@@ -422,7 +415,6 @@
+ {
+   char buf[256];
+   int tracklen;
+-  const gchar *st,*st2;
+ 
+   GripGUI *uinfo;
+ 
+@@ -603,10 +595,8 @@
+   GtkTreeModel *model;
+   int row=-1;
+   GripInfo *ginfo;
+-  GripGUI *uinfo;
+  
+   ginfo=(GripInfo *)data;
+-  uinfo=&(ginfo->gui_info);
+   
+   if(gtk_tree_selection_get_selected(selection,&model,&iter)) {
+     gtk_tree_model_get(model,&iter,TRACKLIST_NUM_COL,&row,-1);
+@@ -1940,7 +1930,8 @@
+ 
+       Debug(_("Mailing entry to %s\n"),ginfo->discdb_submit_email);
+ 
+-      system(mailcmd);
++      if (system(mailcmd)==-1)
++        Debug(_("Mailing entry to %s failed\n"),ginfo->discdb_submit_email);
+ 
+       remove(filename);
+     }
diff --git a/grip.no-rip-speed-is-indicated-in-the-application-804180.patch b/grip.no-rip-speed-is-indicated-in-the-application-804180.patch
new file mode 100644
index 0000000..3291376
--- /dev/null
+++ b/grip.no-rip-speed-is-indicated-in-the-application-804180.patch
@@ -0,0 +1,20 @@
+--- grip-3.2.0/src/rip.c	2012-03-27 12:46:01.668611888 +0200
++++ grip-3.2.0/src/rip.c.new	2012-03-27 12:46:41.543676015 +0200
+@@ -805,7 +805,7 @@
+     gtk_progress_bar_update(GTK_PROGRESS_BAR(uinfo->ripprogbar),percent);
+ 
+     now = time(NULL);
+-    elapsed = (gfloat)now - (gfloat)ginfo->rip_started;
++    elapsed = (gfloat)(now - ginfo->rip_started);
+ 
+     /* 1x is 44100*2*2 = 176400 bytes/sec */
+     if(elapsed < 0.1f) /* 1/10 sec. */
+@@ -935,7 +935,7 @@
+ 			      percent);
+        
+       now = time(NULL);
+-      elapsed = (gfloat)now - (gfloat)ginfo->mp3_started[mycpu];
++      elapsed = (gfloat)(now - ginfo->mp3_started[mycpu]);
+ 
+       if(elapsed < 0.1f) /* 1/10 sec. */
+ 	speed=0.0f;
diff --git a/grip.segfault-if-cd-disappeared.patch b/grip.segfault-if-cd-disappeared.patch
new file mode 100644
index 0000000..d574f90
--- /dev/null
+++ b/grip.segfault-if-cd-disappeared.patch
@@ -0,0 +1,17 @@
+--- grip-3.2.0/src/cdplay.c	2004-04-23 18:26:40.000000000 +0200
++++ grip-3.2.0/src/cdplay.c.new	2012-03-27 12:46:37.655669761 +0200
+@@ -491,10 +491,11 @@
+ 
+   path=gtk_tree_path_new_from_indices(track,-1);
+ 
+-  gtk_tree_model_get_iter(GTK_TREE_MODEL(uinfo->track_list_store),&iter,path);
++  checked = gtk_tree_model_get_iter(GTK_TREE_MODEL(uinfo->track_list_store),&iter,path);
+ 
+-  gtk_tree_model_get(GTK_TREE_MODEL(uinfo->track_list_store),
+-		     &iter,TRACKLIST_RIP_COL,&checked,-1);
++  if (checked)
++    gtk_tree_model_get(GTK_TREE_MODEL(uinfo->track_list_store),
++		       &iter,TRACKLIST_RIP_COL,&checked,-1);
+ 
+   return checked;
+ }
diff --git a/grip.spec b/grip.spec
index 98a0655..2fc9385 100644
--- a/grip.spec
+++ b/grip.spec
@@ -1,7 +1,7 @@
 Summary: Front-end for CD rippers and Ogg Vorbis encoders
 Name: grip
 Version: 3.2.0
-Release: 35%{?dist}
+Release: 36%{?dist}
 Epoch: 1
 License: GPLv2+
 Group: Applications/Multimedia
@@ -17,6 +17,9 @@ Patch7: grip.834724.patch
 Patch8: grip.split-utf-8-strings.patch
 Patch9: grip.spurious-output-when-editing-disc-info-736391.patch
 Patch10: grip.GripUpdate-728254.patch
+Patch11: grip.no-rip-speed-is-indicated-in-the-application-804180.patch
+Patch12: grip.segfault-if-cd-disappeared.patch
+Patch13: grip.cleanup-warnings.patch
 URL: http://www.nostatic.org/grip/
 Requires: vorbis-tools
 BuildRequires: vte-devel cdparanoia-devel
@@ -42,6 +45,9 @@ accessing track information on disc database servers.
 %patch8 -p1
 %patch9 -p1
 %patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
 
 %build
 
@@ -108,6 +114,11 @@ desktop-file-install \
 %{_mandir}/man1/*
 
 %changelog
+* Tue Mar 27 2012 Adrian Reber <adrian at lisas.de> - 1:3.2.0-36
+- fixed "no rip speed is indicated in the application" (#804180)
+- removed a few warnings
+- fixed a segfault
+
 * Mon Mar 26 2012 Adrian Reber <adrian at lisas.de> - 1:3.2.0-35
 - fixed "GripUpdate: Process /usr/bin/grip was killed by signal 11" (#728254)
 


More information about the scm-commits mailing list