More compile fixes
[erwise] / erwise / main.c
1 static char *rcsid = "$Id: main.c,v 1.1 1992/05/18 21:43:03 tvr Exp $";
2
3 #include "Includes.h"
4
5
6
7 void main(argc, argv)
8 int argc;
9 char *argv[];
10 {
11     FILE *fp;
12
13     ConfigInit();
14
15     if (fp = OpenErwiserc("r")) {
16         ConfigRestore(fp);
17         fclose(fp);
18     }
19     if (UiInitialize(argc, argv, ConfigGetValue, ConfigSetValue) != UI_OK)
20         DisplayFatal("Error initializing Ui-toolkit");
21
22     AttachCallbacks();
23     BindKeys();
24     BindVariables();
25
26     UiMainLoop();
27 }
28
29 #define RCPOSTFIX ".old"
30 FILE *
31  OpenErwiserc(type)
32 char *type;
33 {
34     char *tmpstr;
35     char *bustr;
36     FILE *fp;
37
38     if (!getenv("HOME"))
39         return (FILE *) NULL;
40
41     tmpstr = strdup(getenv("HOME"));
42
43     tmpstr = (char *) ReAlloc((void *) tmpstr, strlen(tmpstr) +
44                               strlen(ERWISERC) + 2);
45     strcat(tmpstr, "/");
46     strcat(tmpstr, ERWISERC);
47     if (!strcmp(type, "w")) {
48         bustr = (char *) Malloc((strlen(tmpstr) + strlen(RCPOSTFIX) + 1) *
49                                 sizeof(char));
50         strcpy(bustr, tmpstr);
51         strcat(bustr, RCPOSTFIX);
52         rename(tmpstr, bustr);
53         free(bustr);
54     }
55     fp = fopen(tmpstr, type);
56     Free(tmpstr);
57
58     return fp;
59 }
60
61
62 #ifdef mips
63 char *
64  strdup(s)
65 char *s;
66 {
67     char *p = (char *) malloc(strlen(s) + 1);
68
69     strcpy(p, s);
70
71     return p;
72 }
73
74 #endif