Skip to content
Snippets Groups Projects
Commit bcd55100 authored by Christophe Geuzaine's avatar Christophe Geuzaine
Browse files

better fix: *only* start from scratch if we actually deleted something
parent 8ae31099
No related branches found
No related tags found
No related merge requests found
// $Id: Geo.cpp,v 1.55 2006-08-18 17:49:35 geuzaine Exp $ // $Id: Geo.cpp,v 1.56 2006-08-18 18:00:42 geuzaine Exp $
// //
// Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle // Copyright (C) 1997-2006 C. Geuzaine, J.-F. Remacle
// //
...@@ -77,7 +77,7 @@ double evaluate_scalarfunction(char *var, double val, char *funct) ...@@ -77,7 +77,7 @@ double evaluate_scalarfunction(char *var, double val, char *funct)
return *(double *)List_Pointer(TheSymbol_P->val, 0); return *(double *)List_Pointer(TheSymbol_P->val, 0);
} }
void add_infile(char *text, char *fich) void add_infile(char *text, char *fich, bool deleted_something)
{ {
FILE *file; FILE *file;
...@@ -100,15 +100,17 @@ void add_infile(char *text, char *fich) ...@@ -100,15 +100,17 @@ void add_infile(char *text, char *fich)
fprintf(file, "%s\n", text); fprintf(file, "%s\n", text);
fclose(file); fclose(file);
// we need to start from scratch since the command just parsed could if(deleted_something){
// have deleted some entities // we need to start from scratch since the command just parsed
GMODEL->destroy(); // could have deleted some entities
GMODEL->destroy();
}
GMODEL->import(); GMODEL->import();
} }
void coherence(char *fich) void coherence(char *fich)
{ {
add_infile("Coherence;", fich); add_infile("Coherence;", fich, true);
} }
void strncat_list(char *text, List_T *list) void strncat_list(char *text, List_T *list)
...@@ -132,7 +134,7 @@ void delet(List_T *list, char *fich, char *what) ...@@ -132,7 +134,7 @@ void delet(List_T *list, char *fich, char *what)
snprintf(text, BUFFSIZE, "Delete {\n %s{", what); snprintf(text, BUFFSIZE, "Delete {\n %s{", what);
strncat_list(text, list); strncat_list(text, list);
strncat(text, "};\n}", BUFFSIZE-strlen(text)); strncat(text, "};\n}", BUFFSIZE-strlen(text));
add_infile(text, fich); add_infile(text, fich, true);
} }
void add_trsfellisurf(int type, int N, int *l, char *fich, char *dir) void add_trsfellisurf(int type, int N, int *l, char *fich, char *dir)
......
...@@ -86,7 +86,7 @@ double evaluate_scalarfunction (char *var, double val, char *funct); ...@@ -86,7 +86,7 @@ double evaluate_scalarfunction (char *var, double val, char *funct);
void coherence(char *fich); void coherence(char *fich);
void delet(List_T *list, char *fich, char *what); void delet(List_T *list, char *fich, char *what);
void add_infile(char *text, char *fich); void add_infile(char *text, char *fich, bool deleted_something=false);
void add_trsfline(int N, int *l, char *fich, char *type, char *typearg, char *pts); void add_trsfline(int N, int *l, char *fich, char *type, char *typearg, char *pts);
void add_trsfellisurf(int type, int N, int *l, char *fich, char *dir); void add_trsfellisurf(int type, int N, int *l, char *fich, char *dir);
void add_trsfvol(int N, int *l, char *fich); void add_trsfvol(int N, int *l, char *fich);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment