[BACK]Return to readline.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / lib / libedit

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/lib/libedit/readline.c between version 1.41 and 1.42

version 1.41, 2003/11/01 23:39:22 version 1.42, 2003/11/02 01:45:14
Line 1445  filename_completion_function(const char 
Line 1445  filename_completion_function(const char 
                         (void)strncpy(dirname, text, len);                          (void)strncpy(dirname, text, len);
                         dirname[len] = '\0';                          dirname[len] = '\0';
                 } else {                  } else {
                         filename = strdup(text);                          if (*text == 0)
                         if (filename == NULL)                                  filename = NULL;
                                 return NULL;                          else {
                                   filename = strdup(text);
                                   if (filename == NULL)
                                           return NULL;
                           }
                         dirname = NULL;                          dirname = NULL;
                 }                  }
   
Line 1467  filename_completion_function(const char 
Line 1471  filename_completion_function(const char 
                         free(temp);     /* no longer needed */                          free(temp);     /* no longer needed */
                 }                  }
                 /* will be used in cycle */                  /* will be used in cycle */
                 filename_len = strlen(filename);                  filename_len = filename ? strlen(filename) : 0;
                 if (filename_len == 0)  
                         return (NULL);  /* no expansion possible */  
   
                 if (dir != NULL) {                  if (dir != NULL) {
                         (void)closedir(dir);                          (void)closedir(dir);
Line 1481  filename_completion_function(const char 
Line 1483  filename_completion_function(const char 
         }          }
         /* find the match */          /* find the match */
         while ((entry = readdir(dir)) != NULL) {          while ((entry = readdir(dir)) != NULL) {
                   /* skip . and .. */
                   if (entry->d_name[0] == '.' && (!entry->d_name[1]
                       || (entry->d_name[1] == '.' && !entry->d_name[2])))
                           continue;
                   if (filename_len == 0)
                           break;
                 /* otherwise, get first entry where first */                  /* otherwise, get first entry where first */
                 /* filename_len characters are equal      */                  /* filename_len characters are equal      */
                 if (entry->d_name[0] == filename[0]                  if (entry->d_name[0] == filename[0]
Line 1727  rl_complete_internal(int what_to_do)
Line 1735  rl_complete_internal(int what_to_do)
         rl_point = li->cursor - li->buffer;          rl_point = li->cursor - li->buffer;
         rl_end = li->lastchar - li->buffer;          rl_end = li->lastchar - li->buffer;
   
         if (!rl_attempted_completion_function)          if (rl_attempted_completion_function) {
                 matches = completion_matches(temp, (CPFunction *)complet_func);  
         else {  
                 int end = li->cursor - li->buffer;                  int end = li->cursor - li->buffer;
                 matches = (*rl_attempted_completion_function) (temp, (int)                  matches = (*rl_attempted_completion_function) (temp, (int)
                     (end - len), end);                      (end - len), end);
         }          } else
                   matches = 0;
           if (!rl_attempted_completion_function || !matches)
                   matches = completion_matches(temp, (CPFunction *)complet_func);
   
         if (matches) {          if (matches) {
                 int i, retval = CC_REFRESH;                  int i, retval = CC_REFRESH;

Legend:
Removed from v.1.41  
changed lines
  Added in v.1.42

CVSweb <webmaster@jp.NetBSD.org>