From 723b01c9719b896f35df94bea44fb186d7f9e408 Mon Sep 17 00:00:00 2001 From: germeier Date: Thu, 17 Oct 2002 22:49:26 +0000 Subject: another fix for the 8.3 handling --- ChangeLog | 5 +++++ libmpio/directory.c | 16 +++++++++++----- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 96bc0b3..8f3927b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-10-18 Markus Germeier + + * libmpio/directory.c (mpio_dentry_get_real): + another fix for the 8.3 handling needed for the config file + 2002-10-13 Markus Germeier * mpiosh/callback.c (mpiosh_cmd_dump): fixed compile and diff --git a/libmpio/directory.c b/libmpio/directory.c index ea51ac3..d3cd677 100644 --- a/libmpio/directory.c +++ b/libmpio/directory.c @@ -1,6 +1,6 @@ /* * - * $Id: directory.c,v 1.7 2002/09/24 15:38:03 germeier Exp $ + * $Id: directory.c,v 1.8 2002/10/17 22:49:27 germeier Exp $ * * Library for USB MPIO-* * @@ -213,7 +213,7 @@ mpio_dentry_get_real(mpio_t *m, mpio_mem_t mem, BYTE *buffer, BYTE *uc; BYTE *fname = 0; iconv_t ic; - int dsize; + int dsize, i; if (buffer == NULL) return -1; @@ -269,9 +269,15 @@ mpio_dentry_get_real(mpio_t *m, mpio_mem_t mem, BYTE *buffer, free(unicode); memcpy(filename_8_3, dentry->name, 8); - filename_8_3[0x08] = '.'; - memcpy(filename_8_3 + 0x09, dentry->ext, 3); - filename_8_3[0x0c] = 0; + i=8; + while(filename_8_3[i-1]==' ') + i--; + filename_8_3[i++] = '.'; + memcpy(filename_8_3 + i, dentry->ext, 3); + i+=3; + while(filename_8_3[i-1]==' ') + i--; + filename_8_3[i] = 0; hexdumpn(4, filename_8_3, 13); if (!vfat) -- cgit v1.2.3