make lua packages interfaces be *.li.
[apps/madmutt.git] / init.c
diff --git a/init.c b/init.c
index 45355c7..1e9eaad 100644 (file)
--- a/init.c
+++ b/init.c
@@ -42,7 +42,7 @@ static int parse_sort (struct option_t* dst, const char *s,
                        const struct mapping_t *map,
                        char* errbuf, ssize_t errlen);
 
-static HASH *ConfigOptions = NULL;
+static hash_t *ConfigOptions = NULL;
 
 /* for synonym warning reports: synonym found during parsing */
 typedef struct syn_t {
@@ -494,10 +494,8 @@ int quadoption (int opt)
   return (QuadOptions[n] >> b) & 0x3;
 }
 
-int query_quadoption2(int opt, const char *prompt)
+int query_quadoption2(int v, const char *prompt)
 {
-  int v = mlua_reggeti(opt);
-
   switch (v) {
   case M_YES:
   case M_NO:
@@ -2200,7 +2198,7 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
   err.data = error;
   err.dsize = sizeof(error);
 
-  ConfigOptions = hash_create (sizeof(MuttVars) * 2, 0);
+  ConfigOptions = hash_new (sizeof(MuttVars) * 2, 0);
   for (i = 0; MuttVars[i].option; i++) {
     hash_insert (ConfigOptions, MuttVars[i].option, &MuttVars[i]);
   }
@@ -2211,36 +2209,12 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
   snprintf (AttachmentMarker, sizeof(AttachmentMarker),
             "\033]9;%ld\a", (long) time (NULL));
 
-  /* on one of the systems I use, getcwd() does not return the same prefix
-     as is listed in the passwd file */
-  if ((p = getenv ("HOME")))
-    Homedir = m_strdup(p);
-
+  luaM_initialize();
   /* Get some information about the user */
   if ((pw = getpwuid (getuid ()))) {
     char rnbuf[STRING];
-
-    Username = m_strdup(pw->pw_name);
-    if (!Homedir)
-      Homedir = m_strdup(pw->pw_dir);
-
-    mutt_gecos_name(rnbuf, sizeof(rnbuf), pw, GecosMask.rx);
+    mutt_gecos_name(rnbuf, sizeof(rnbuf), pw, MCore.gecos_mask);
     Realname = m_strdup(rnbuf);
-    endpwent ();
-  }
-  else {
-    if (!Homedir) {
-      mutt_endwin (NULL);
-      fputs (_("unable to determine home directory"), stderr);
-      exit (1);
-    }
-    if ((p = getenv ("USER")))
-      Username = m_strdup(p);
-    else {
-      mutt_endwin (NULL);
-      fputs (_("unable to determine username"), stderr);
-      exit (1);
-    }
   }
 
   /* And about the host... */
@@ -2291,9 +2265,9 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
     Spoolfile = m_strdup(p);
   else {
 #ifdef HOMESPOOL
-    mutt_concat_path(buffer, sizeof(buffer), NONULL(Homedir), MAILPATH);
+    mutt_concat_path(buffer, sizeof(buffer), NONULL(MCore.homedir), MAILPATH);
 #else
-    mutt_concat_path(buffer, sizeof(buffer), MAILPATH, NONULL(Username));
+    mutt_concat_path(buffer, sizeof(buffer), MAILPATH, NONULL(MCore.username));
 #endif
     Spoolfile = m_strdup(buffer);
   }
@@ -2307,8 +2281,6 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
                    "/mailcap:/etc/mailcap:/usr/etc/mailcap:/usr/local/etc/mailcap");
   }
 
-  Tempdir = m_strdup((p = getenv ("TMPDIR")) ? p : "/tmp");
-
   if ((p = getenv ("REPLYTO")) != NULL) {
     BUFFER buf, token;
 
@@ -2327,7 +2299,6 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
     From = rfc822_parse_adrlist (NULL, p);
 
   charset_initialize();
-  mlua_initialize();
 
   /* Set standard defaults */
   hash_map (ConfigOptions, mutt_set_default, 0);
@@ -2344,10 +2315,10 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
   mutt_init_history ();
 
   if (!Muttrc) {
-      snprintf (buffer, sizeof(buffer), "%s/.madmuttrc", NONULL (Homedir));
+      snprintf (buffer, sizeof(buffer), "%s/.madmuttrc", NONULL(MCore.homedir));
     if (access (buffer, F_OK) == -1)
       snprintf (buffer, sizeof(buffer), "%s/.madmutt/madmuttrc",
-                NONULL (Homedir));
+                NONULL(MCore.homedir));
 
     default_rc = 1;
     Muttrc = m_strdup(buffer);
@@ -2358,8 +2329,6 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
     mutt_expand_path (buffer, sizeof(buffer));
     Muttrc = m_strdup(buffer);
   }
-  p_delete(&AliasFile);
-  AliasFile = m_strdup(NONULL (Muttrc));
 
   /* Process the global rc file if it exists and the user hasn't explicity
      requested not to via "-n".  */
@@ -2400,11 +2369,11 @@ void mutt_init (int skip_sys_rc, string_list_t * commands)
   }
 
   /* LUA {{{ */
-  snprintf(buffer, sizeof(buffer), "%s/.madmutt.lua", NONULL(Homedir));
+  snprintf(buffer, sizeof(buffer), "%s/.madmutt.lua", NONULL(MCore.homedir));
   if (access(buffer, F_OK) < 0)
-      snprintf(buffer, sizeof(buffer), "%s/.madmutt/cfg.lua", NONULL(Homedir));
+      snprintf(buffer, sizeof(buffer), "%s/.madmutt/cfg.lua", NONULL(MCore.homedir));
   if (!access(buffer, F_OK)) {
-      need_pause = mlua_wrap(mutt_error, mlua_dofile(buffer));
+      need_pause = luaM_wrap(mutt_error, luaM_dofile(buffer));
   }
   /* }}} */