block: don't put spaces around :
[ironout.git] / rename.c
blobb94e4c3774a580dbde78582b1f3043ca69456132
1 #include <string.h>
2 #include "find.h"
3 #include "rename.h"
4 #include "src.h"
6 void rename_name(struct project *project, struct name *name, char *newname)
8 struct hit *all = find_name(project, name);
9 struct hit *cur = all;
10 while (cur) {
11 struct cfile *cfile = cur->cfile;
12 struct src *orig = src_from_file(cur->cfile->name);
13 struct src *changed = src_copy(orig);
14 long diffs = 0;
15 while (cur && cur->cfile == cfile) {
16 long start = cur->start + diffs;
17 long end = cur->end + diffs;
18 src_delete(changed, start, end);
19 src_insert(changed, start, newname);
20 cur = cur->next;
21 diffs += strlen(newname) - (end - start);
23 src_print_diffs(orig, changed, cfile->name);
24 src_free(orig);
25 src_free(changed);
27 free_hits(all);