]> Sergey Matveev's repositories - nnn.git/commitdiff
Optimize file extension check
authorArun Prakash Jana <engineerarun@gmail.com>
Wed, 8 Jan 2020 13:38:01 +0000 (19:08 +0530)
committerArun Prakash Jana <engineerarun@gmail.com>
Wed, 8 Jan 2020 13:38:01 +0000 (19:08 +0530)
src/nnn.c

index 0e70fbfd297a7a8a398906e7f037f684f6fa2896..2d0ca54a1657e27524f22858e6f0a884b75f6ef1 100644 (file)
--- a/src/nnn.c
+++ b/src/nnn.c
@@ -1865,8 +1865,8 @@ static int entrycmp(const void *va, const void *vb)
                if (pb->blocks < pa->blocks)
                        return -1;
        } else if (cfg.extnorder && !(pb->flags & DIR_OR_LINK_TO_DIR)) {
-               char *extna = xmemrchr((uchar *)pa->name, '.', strlen(pa->name));
-               char *extnb = xmemrchr((uchar *)pb->name, '.', strlen(pb->name));
+               char *extna = xmemrchr((uchar *)pa->name, '.', pa->nlen - 1);
+               char *extnb = xmemrchr((uchar *)pb->name, '.', pb->nlen - 1);
 
                if (extna || extnb) {
                        if (!extna)
@@ -4215,7 +4215,7 @@ static void redraw(char *path)
 
                /* Get the file extension for regular files */
                if (S_ISREG(pent->mode)) {
-                       i = (int)strlen(pent->name);
+                       i = (int)(pent->nlen - 1);
                        ptr = xmemrchr((uchar *)pent->name, '.', i);
                        if (ptr)
                                attrs = ptr - pent->name; /* attrs used as tmp var */