[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Graveman-cvs] Changes to graveman/current/src/matos.c
From: |
sylvain cresto |
Subject: |
[Graveman-cvs] Changes to graveman/current/src/matos.c |
Date: |
Sun, 20 Feb 2005 12:45:28 -0500 |
Index: graveman/current/src/matos.c
diff -u graveman/current/src/matos.c:1.14 graveman/current/src/matos.c:1.15
--- graveman/current/src/matos.c:1.14 Sat Feb 19 17:49:08 2005
+++ graveman/current/src/matos.c Sun Feb 20 17:45:02 2005
@@ -162,13 +162,13 @@
GtkEntry *Lgraveuriso = GTK_ENTRY(sc_grave_get_widget(Ag,
"dstcopybtnvalue"));
gchar *Lsrc = get_combo_value(Llecteur);
gchar *Ldst = get_combo_value(Lgraveur);
- gchar *Liso = NULL;
gchar *Ltxt;
gboolean Lstatus;
gboolean Loperationstatus = FALSE;
gint Ltodo =
gtk_spin_button_get_value(GTK_SPIN_BUTTON(sc_grave_get_widget(Ag,
"nbrcdcopy")));
gint Ldone = 1;
- gchar *Ltmpdir = NULL;
+ gchar Ltmpdir[MAXPATHLEN]="";
+ gchar Liso[MAXPATHLEN]="";
const gchar *Lptriso;
_DEB("DEBUT COPIE !! 0");
@@ -188,7 +188,9 @@
if (!strcmp(Lsrc, "iso")) {
/* copie d'une image vers un cd, on utilise cdrecord */
Lptriso = gtk_entry_get_text(Llecteuriso);
- Liso = _FILENAME(Lptriso);
+ Ltxt = _FILENAME(Lptriso);
+ g_strlcpy(Liso, Ltxt, MAXPATHLEN-1);
+ g_free(Ltxt);
/* on test si on a bien acces au fichier iso source */
if (!*Liso) {
@@ -210,7 +212,9 @@
/* copie d'un cd vers une image, on utilise readcd */
struct stat Lfstat;
Lptriso = gtk_entry_get_text(Lgraveuriso);
- Liso = _FILENAME(Lptriso);
+ Ltxt = _FILENAME(Lptriso);
+ g_strlcpy(Liso, Ltxt, MAXPATHLEN-1);
+ g_free(Ltxt);
/* si le fichier existe deja on demande confirmatation avant de l'ecraser
*/
Ltxt = NULL;
if (!*Liso) {
@@ -233,7 +237,6 @@
g_free(Liso);
}
} else { /* copie d'un cd a un autre, on utilise cdrdao */
- gchar *Ltmpdir;
/* on ajoute une tache pour la lecture,
* si il y a simulation alors ajoute une tache a faire */
// Ltodo = Ltodo + 1 + (Lsimul == TRUE ? 1 : 0);
@@ -242,17 +245,17 @@
* on passe quand meme vers une image temporraire pour le moment,
* c'est trop le bordel sinon ! */
_DEB("DEBUT COPIE !!");
- Ltmpdir = g_strdup_printf("%s/%s", conf_get_string_def("tmpdir", "/tmp"),
"gravemanXXXXXX");
+ g_snprintf(Ltmpdir, MAXPATHLEN-1, "%s/%s", conf_get_string_def("tmpdir",
"/tmp"), "gravemanXXXXXX");
if (!mkdtemp(Ltmpdir)) {
g_set_error(Aerror, G_FILE_ERROR, g_file_error_from_errno(errno), "%s
%s: %s",
_("Cannot create directory"), Ltmpdir, g_strerror(errno));
+ *Ltmpdir = 0;
Lstatus = FALSE;
} else {
- Ltmpdir = g_realloc(Ltmpdir, strlen(Ltmpdir)+strlen("/tmpiso.bin")+1);
- strcat(Ltmpdir, "/tmpiso.bin");
+ g_snprintf(Liso, MAXPATHLEN-1, "%s/tmpiso.bin", Ltmpdir);
- sc_grave_set_data(Ag, &Ltmpdir, "iso"); /* image iso */
+ sc_grave_set_data(Ag, &Liso, "iso"); /* image iso */
/* copie du cd avec monsieur cdrdao */
Lstatus = copycd(Ag, Aerror);
@@ -289,15 +292,19 @@
Lstatus = burn_from_image("copy", Ag, Aerror);
}
} */
- if ((Ltxt=strrchr(Ltmpdir, '/'))) *Ltxt=0;
-
- deltempdir(Ltmpdir);
-
sc_grave_del_data(Ag, "iso");
+
+ deltempdir(Ltmpdir);
+ *Ltmpdir = 0;
}
- g_free(Ltmpdir);
}
+ sc_grave_del_data(Ag, "todo");
+ sc_grave_del_data(Ag, "done");
+ sc_grave_del_data(Ag, "operationstatus");
+ sc_grave_del_data(Ag, "tmpdir");
+ sc_grave_del_data(Ag, "gerror");
+
g_free(Ldst);
g_free(Lsrc);
return Lstatus;
@@ -313,9 +320,10 @@
gboolean *Labort = sc_grave_get_data(Ag, "gabort");
gint Ldone = 1;
gchar *Ldst = get_combo_value(Lgraveur);
- gchar *Ltmpdir = NULL;
+ gchar Ltmpdir[MAXPATHLEN] = "";
gchar *Lextrapara = NULL;
- gchar *Liso = NULL;
+ gchar Liso[MAXPATHLEN] = "";
+ gchar *Ltmp;
gboolean Loperationstatus = FALSE;
gboolean Lstatus;
@@ -328,25 +336,31 @@
/* on retourne dans ltmp le nom du repertoire temporraire utilise pour
* l'operation */
Lstatus = preparedata(Ag, Aerror);
-_DEB("ici LDST => %s\n", Ldst);
+
+ _DEB("ici LDST => %s\n", Ldst);
if (strcmp(Ldst, "iso")) {
- Liso = g_strdup_printf("%s.iso", Ltmpdir);
+ g_snprintf(Liso, MAXPATHLEN-1, "%s.iso", Ltmpdir);
Ltodo=Ltodo+(Lsimul ? 2 : 1); /* + 1 pour l'ecriture de l'image iso et 1
pour la simulation */
} else {
- Liso = _FILENAME(gtk_entry_get_text(Lgraveuriso));
+ Ltmp = _FILENAME(gtk_entry_get_text(Lgraveuriso));
+ g_strlcpy(Liso, Ltmp, MAXPATHLEN-1);
+ g_free(Ltmp);
Ltodo = 1;
}
+
sc_grave_set_data(Ag, &Liso, "iso"); /* image iso */
if (Lstatus && *Labort==FALSE) {
Lextrapara = make_image_getextrapara(Ag, "data");
- sc_grave_set_data(Ag, &Lextrapara, "extrapara"); /* parametres
supplementaires */
+ sc_grave_set_data(Ag, Lextrapara, "extrapara"); /* parametres
supplementaires */
+
Lstatus = make_iso(Ag, Aerror);
+
sc_grave_del_data(Ag, "extrapara");
g_free(Lextrapara);
if (strcmp(Ldst, "iso") && Lstatus && *Labort==FALSE) {
/* ici il faut appeler cdrecord ! */
Lextrapara = burn_data_getextrapara(Ag);
- sc_grave_set_data(Ag, &Lextrapara, "extrapara"); /* parametres
supplementaires */
+ sc_grave_set_data(Ag, Lextrapara, "extrapara"); /* parametres
supplementaires */
Lstatus = burn_from_image("data", Ag, Aerror);
sc_grave_del_data(Ag, "extrapara");
g_free(Lextrapara);
@@ -355,15 +369,14 @@
deltempdir(Ltmpdir);
- if (strcmp(Ldst, "iso") && Liso
+ if (strcmp(Ldst, "iso") && *Liso
&& g_file_test(Liso, G_FILE_TEST_EXISTS + G_FILE_TEST_IS_REGULAR)==TRUE)
{
unlink(Liso);
}
- g_free(Liso);
sc_grave_del_data(Ag, "todo");
sc_grave_del_data(Ag, "done");
- sc_grave_del_data(Ag, "tmpdir"); g_free(Ltmpdir);
+ sc_grave_del_data(Ag, "tmpdir");
sc_grave_del_data(Ag, "operationstatus");
sc_grave_del_data(Ag, "gerror");
sc_grave_del_data(Ag, "iso");
@@ -378,7 +391,7 @@
gint Ltodo = gtk_tree_model_iter_n_children(Ltreemodel, NULL);
gint Ldone = 0;
- gchar *Ltmpdir = NULL;
+ gchar Ltmpdir[MAXPATHLEN] = "";
gboolean Lstatus, Loperationstatus = FALSE;
sc_grave_set_data(Ag, &Ltodo, "todo"); /* a faire */
@@ -395,13 +408,17 @@
Lstatus = gravepiste(Ag, Aerror);
}
- if (Ltmpdir) {
+ if (*Ltmpdir) {
_DEB("on free tmpdir !");
deltempdir(Ltmpdir);
-
- g_free(Ltmpdir);
}
+ sc_grave_del_data(Ag, "todo");
+ sc_grave_del_data(Ag, "done");
+ sc_grave_del_data(Ag, "tmpdir");
+ sc_grave_del_data(Ag, "operationstatus");
+ sc_grave_del_data(Ag, "gerror");
+
return Lstatus ? TRUE : FALSE;
}
@@ -484,9 +501,10 @@
GtkWidget *Lgraveur = sc_grave_get_widget(Ag, "dstdvddatacombo");
gint Ldone = 1;
gchar *Ldst = get_combo_value(Lgraveur);
- gchar *Ltmpdir = NULL;
+ gchar Ltmpdir[MAXPATHLEN] = "";
gchar *Lextrapara = NULL;
- gchar *Liso = NULL;
+ gchar *Ltmp;
+ gchar Liso[MAXPATHLEN] = "";
gboolean Loperationstatus = FALSE;
gboolean Lstatus;
@@ -502,19 +520,21 @@
_DEB("ici LDST => %s\n", Ldst);
Lextrapara = make_image_getextrapara(Ag, "dvddata");
- sc_grave_set_data(Ag, &Lextrapara, "extradata"); /* parametres
supplementaires */
+ sc_grave_set_data(Ag, Lextrapara, "extradata"); /* parametres
supplementaires */
+
if (strcmp(Ldst, "iso")) {
if (Lsimul) Ltodo++; /* 1 pour la simulation */
Lstatus = burn_dvd(Ag, Aerror);
} else {
- Liso = _FILENAME(gtk_entry_get_text(Lgraveuriso));
+ Ltmp = _FILENAME(gtk_entry_get_text(Lgraveuriso));
+ g_strlcpy(Liso, Ltmp, MAXPATHLEN-1);
+ g_free(Ltmp);
Ltodo = 1;
sc_grave_set_data(Ag, &Liso, "iso"); /* image iso */
Lstatus = make_iso(Ag, Aerror);
sc_grave_del_data(Ag, "iso");
- g_free(Liso);
}
sc_grave_del_data(Ag, "extrapara");
g_free(Lextrapara);
@@ -523,7 +543,7 @@
sc_grave_del_data(Ag, "todo");
sc_grave_del_data(Ag, "done");
- sc_grave_del_data(Ag, "tmpdir"); g_free(Ltmpdir);
+ sc_grave_del_data(Ag, "tmpdir");
sc_grave_del_data(Ag, "operationstatus");
sc_grave_del_data(Ag, "gerror");
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/02
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/02
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/07
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/08
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/08
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/12
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/16
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/19
- [Graveman-cvs] Changes to graveman/current/src/matos.c,
sylvain cresto <=
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/20
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/26
- [Graveman-cvs] Changes to graveman/current/src/matos.c, sylvain cresto, 2005/02/27