qemacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemacs-devel] Changes to qemacs/dired.c


From: Charlie Gordon
Subject: [Qemacs-devel] Changes to qemacs/dired.c
Date: Wed, 11 May 2005 10:37:17 -0400

Index: qemacs/dired.c
diff -u qemacs/dired.c:1.4 qemacs/dired.c:1.5
--- qemacs/dired.c:1.4  Mon May  9 01:29:34 2005
+++ qemacs/dired.c      Wed May 11 14:37:16 2005
@@ -34,7 +34,7 @@
     StringArray items;
     int sort_mode; /* DIRED_SORT_GROUP | DIRED_SORT_NAME */
     int last_index;
-    char path[1024]; /* current path */
+    char path[MAX_FILENAME_SIZE]; /* current path */
 } DiredState;
 
 /* opaque structure for sorting DiredState.items StringArray */
@@ -83,31 +83,31 @@
     int is_dir1, is_dir2;
 
     if (mode & DIRED_SORT_GROUP) {
-       is_dir1 = !!S_ISDIR(dip1->mode);
-       is_dir2 = !!S_ISDIR(dip2->mode);
-       if (is_dir1 != is_dir2)
-           return is_dir2 - is_dir1;
+        is_dir1 = !!S_ISDIR(dip1->mode);
+        is_dir2 = !!S_ISDIR(dip2->mode);
+        if (is_dir1 != is_dir2)
+            return is_dir2 - is_dir1;
     }
     for (;;) {
-       if (mode & DIRED_SORT_DATE) {
-           if (dip1->mtime != dip2->mtime) {
-               res = (dip1->mtime < dip2->mtime) ? -1 : 1;
-               break;
-           }
-       }
-       if (mode & DIRED_SORT_SIZE) {
-           if (dip1->size != dip2->size) {
-               res = (dip1->size < dip2->size) ? -1 : 1;
-               break;
-           }
-       }
-       if (mode & DIRED_SORT_EXTENSION) {
-           res = strcmp(extension(dip1->name), extension(dip2->name));
-           if (res)
-               break;
-       }
-       res = strcmp(dip1->name, dip2->name);
-       break;
+        if (mode & DIRED_SORT_DATE) {
+            if (dip1->mtime != dip2->mtime) {
+                res = (dip1->mtime < dip2->mtime) ? -1 : 1;
+                break;
+            }
+        }
+        if (mode & DIRED_SORT_SIZE) {
+            if (dip1->size != dip2->size) {
+                res = (dip1->size < dip2->size) ? -1 : 1;
+                break;
+            }
+        }
+        if (mode & DIRED_SORT_EXTENSION) {
+            res = strcmp(extension(dip1->name), extension(dip2->name));
+            if (res)
+                break;
+        }
+        res = strcmp(dip1->name, dip2->name);
+        break;
     }
     return (mode & DIRED_SORT_DESCENDING) ? -res : res;
 }
@@ -124,7 +124,7 @@
     index = dired_get_index(s);
     cur_item = NULL;
     if (index >= 0 && index < hs->items.nb_items)
-       cur_item = hs->items.items[index];
+        cur_item = hs->items.items[index];
 
     qsort(hs->items.items, hs->items.nb_items, 
           sizeof(StringItem *), dired_sort_func);
@@ -135,13 +135,13 @@
     eb_delete(b, 0, b->total_size);
     s->offset = 0;
     if (DIRED_HEADER)
-       eb_printf(b, "  %s:\n", hs->path);
+        eb_printf(b, "  %s:\n", hs->path);
     for (i = 0; i < hs->items.nb_items; i++) {
-       item = hs->items.items[i];
-       dip = item->opaque;
-       dip->offset = b->total_size;
-       if (item == cur_item)
-           s->offset = b->total_size;
+        item = hs->items.items[i];
+        dip = item->opaque;
+        dip->offset = b->total_size;
+        if (item == cur_item)
+            s->offset = b->total_size;
         eb_printf(b, "%c %s\n", dip->mark, item->str);
     }
     b->modified = 0;
@@ -175,39 +175,39 @@
     const char *p;
     
     for (p = sort_order; *p; p++) {
-       switch (tolower(*p)) {
-       case 'n':       /* name */
-           hs->sort_mode &= ~DIRED_SORT_MASK;
-           hs->sort_mode |= DIRED_SORT_NAME;
-           break;
-       case 'e':       /* extension */
-           hs->sort_mode &= ~DIRED_SORT_MASK;
-           hs->sort_mode |= DIRED_SORT_EXTENSION;
-           break;
-       case 's':       /* size */
-           hs->sort_mode &= ~DIRED_SORT_MASK;
-           hs->sort_mode |= DIRED_SORT_SIZE;
-           break;
-       case 'd':       /* direct */
-           hs->sort_mode &= ~DIRED_SORT_MASK;
-           hs->sort_mode |= DIRED_SORT_DATE;
-           break;
-       case 'u':       /* ungroup */
-           hs->sort_mode &= ~DIRED_SORT_GROUP;
-           break;
-       case 'g':       /* group */
-           hs->sort_mode |= DIRED_SORT_GROUP;
-           break;
-       case '+':       /* ascending */
-           hs->sort_mode &= ~DIRED_SORT_DESCENDING;
-           break;
-       case '-':       /* descending */
-           hs->sort_mode |= DIRED_SORT_DESCENDING;
-           break;
-       case 'r':       /* reverse */
-           hs->sort_mode ^= DIRED_SORT_DESCENDING;
-           break;
-       }
+        switch (tolower(*p)) {
+        case 'n':       /* name */
+            hs->sort_mode &= ~DIRED_SORT_MASK;
+            hs->sort_mode |= DIRED_SORT_NAME;
+            break;
+        case 'e':       /* extension */
+            hs->sort_mode &= ~DIRED_SORT_MASK;
+            hs->sort_mode |= DIRED_SORT_EXTENSION;
+            break;
+        case 's':       /* size */
+            hs->sort_mode &= ~DIRED_SORT_MASK;
+            hs->sort_mode |= DIRED_SORT_SIZE;
+            break;
+        case 'd':       /* direct */
+            hs->sort_mode &= ~DIRED_SORT_MASK;
+            hs->sort_mode |= DIRED_SORT_DATE;
+            break;
+        case 'u':       /* ungroup */
+            hs->sort_mode &= ~DIRED_SORT_GROUP;
+            break;
+        case 'g':       /* group */
+            hs->sort_mode |= DIRED_SORT_GROUP;
+            break;
+        case '+':       /* ascending */
+            hs->sort_mode &= ~DIRED_SORT_DESCENDING;
+            break;
+        case '-':       /* descending */
+            hs->sort_mode |= DIRED_SORT_DESCENDING;
+            break;
+        case 'r':       /* reverse */
+            hs->sort_mode ^= DIRED_SORT_DESCENDING;
+            break;
+        }
     }
     do_dired_sort(s);
 }
@@ -218,7 +218,7 @@
 {
     DiredState *hs = s->mode_data;
     FindFileState *ffs;
-    char filename[1024];
+    char filename[MAX_FILENAME_SIZE];
     char line[1024], buf[1024];
     const char *p;
     struct stat st;
@@ -239,7 +239,7 @@
             continue;
         p = basename(filename);
 
-#if 1  /* CG: bad idea, but causes spurious bugs */
+#if 1   /* CG: bad idea, but causes spurious bugs */
         /* exclude redundant '.' and '..' */
         if (!strcmp(p, ".") || !strcmp(p, ".."))
             continue;
@@ -292,24 +292,24 @@
         
         item = add_string(&hs->items, line);
         if (item) {
-           DiredItem *dip;
+            DiredItem *dip;
 
-           dip = malloc(sizeof(DiredItem) + strlen(p));
-           dip->state = hs;
-           dip->mode = st.st_mode;
-           dip->size = st.st_size;
-           dip->mtime = st.st_mtime;
-           dip->mark = ' ';
-           strcpy(dip->name, p);
+            dip = malloc(sizeof(DiredItem) + strlen(p));
+            dip->state = hs;
+            dip->mode = st.st_mode;
+            dip->size = st.st_size;
+            dip->mtime = st.st_mtime;
+            dip->mark = ' ';
+            strcpy(dip->name, p);
             item->opaque = dip;
-       }
+        }
     }
     find_file_close(ffs);
     do_dired_sort(s);
 }
 
 static char *get_dired_filename(EditState *s, 
-                               char *buf, int buf_size, int index)
+                                char *buf, int buf_size, int index)
 {
     DiredState *hs = s->mode_data;
     const StringItem *item;
@@ -333,12 +333,12 @@
 static void dired_select(EditState *s)
 {
     struct stat st;
-    char filename[1024];
+    char filename[MAX_FILENAME_SIZE];
     EditState *e;
 
     if (!get_dired_filename(s, filename, sizeof(filename), 
-                           dired_get_index(s))) {
-       return;
+                            dired_get_index(s))) {
+        return;
     }
 
     /* now we can act */
@@ -392,7 +392,7 @@
             e->b = b;
         }
         /* mark buffer as preview, so that it will get recycled if needed */
-       /* CG: this is wrong if buffer existed already */
+        /* CG: this is wrong if buffer existed already */
         b->flags |= BF_PREVIEW;
     }
 }
@@ -406,7 +406,7 @@
 static void dired_parent(EditState *s)
 {
     DiredState *hs = s->mode_data;
-    char filename[1024];
+    char filename[MAX_FILENAME_SIZE];
     
     makepath(filename, sizeof(filename), hs->path, "..");
 
@@ -425,12 +425,12 @@
 static void dired_display_hook(EditState *s)
 {
     DiredState *ds = s->mode_data;
-    char filename[1024];
+    char filename[MAX_FILENAME_SIZE];
     int index;
 
     /* Prevent point from going beyond list */
     if (s->offset && s->offset == s->b->total_size)
-       do_up_down(s, -1);
+        do_up_down(s, -1);
 
     /* open file so that user can see it before it is selected */
     /* XXX: find a better solution (callback) */
@@ -440,10 +440,10 @@
     /* Should not rely on last_index! */
     if (index != ds->last_index) {
         ds->last_index = index;
-       if (get_dired_filename(s, filename, sizeof(filename), 
-                              dired_get_index(s))) {
-           dired_view_file(s, filename);
-       }
+        if (get_dired_filename(s, filename, sizeof(filename), 
+                               dired_get_index(s))) {
+            dired_view_file(s, filename);
+        }
     }
 }
 
@@ -487,7 +487,7 @@
     EditBuffer *b, *b0;
     EditState *e, *e1;
     int width, index, i;
-    char filename[1024], *p;
+    char filename[MAX_FILENAME_SIZE], *p;
 
     /* Should take directory argument with optional switches,
      * find dired window if exists,
@@ -517,16 +517,16 @@
 
     e1 = find_window(e, KEY_RIGHT);
     if (e1)
-       b0 = e1->b;
+        b0 = e1->b;
 
     index = 0;
     /* CG: target file should be an argument to this command */
     for (i = 0; i < hs->items.nb_items; i++) {
-       if (get_dired_filename(e, filename, sizeof(filename), i)
-       &&  !strcmp(filename, b0->filename)) {
-           index = i;
-           break;
-       }
+        if (get_dired_filename(e, filename, sizeof(filename), i)
+        &&  !strcmp(filename, b0->filename)) {
+            index = i;
+            break;
+        }
     }
     e->offset = eb_goto_pos(e->b, index + DIRED_HEADER, 0);
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]