Deep rework of nntp_data_t (ex-NNTP_DATA) to make it list-able.
[apps/madmutt.git] / lib-ui / complete.c
index a06593b..e337e1e 100644 (file)
@@ -36,7 +36,7 @@ int mutt_complete (char *s, ssize_t slen)
 
 #ifdef USE_NNTP
   if (option (OPTNEWS)) {
-    string_list_t *l = CurrentNewsSrv->list;
+    nntp_data_t *l = CurrentNewsSrv->list;
 
     m_strcpy(filepart, sizeof(filepart), s);
 
@@ -46,10 +46,8 @@ int mutt_complete (char *s, ssize_t slen)
      */
     if ((len = m_strlen(filepart)) == 0) {
       for (; l; l = l->next) {
-        NNTP_DATA *data = (NNTP_DATA *) l->data;
-
-        if (data && data->subscribed) {
-          m_strcpy(filepart, sizeof(filepart), data->group);
+        if (l->subscribed) {
+          m_strcpy(filepart, sizeof(filepart), l->group);
           init++;
           l = l->next;
           break;
@@ -58,21 +56,17 @@ int mutt_complete (char *s, ssize_t slen)
     }
 
     for (; l; l = l->next) {
-      NNTP_DATA *data = (NNTP_DATA *) l->data;
-
-      if (data && data->subscribed &&
-          m_strncmp(data->group, filepart, len) == 0) {
+      if (l->subscribed && m_strncmp(l->group, filepart, len) == 0) {
         if (init) {
-          for (i = 0; filepart[i] && data->group[i]; i++) {
-            if (filepart[i] != data->group[i]) {
+          for (i = 0; filepart[i] && l->group[i]; i++) {
+            if (filepart[i] != l->group[i]) {
               filepart[i] = 0;
               break;
             }
           }
           filepart[i] = 0;
-        }
-        else {
-          m_strcpy(filepart, sizeof(filepart), data->group);
+        } else {
+          m_strcpy(filepart, sizeof(filepart), l->group);
           init = 1;
         }
       }