Ignore:
Timestamp:
Jun 19, 2005, 6:10:41 AM (20 years ago)
Author:
bird
Message:

o File resize optimization: The JFS, HPFS and probably NET

will never return space which isn't zeroed when expanding
a file. Associate a file system information object with the
filehandles to keep track of such features. This also fixes
the fsStatFH() implementation trouble.
This attribute doesn't apply to CDFS. While RAMFS fails
the test, it zeros at open but not at setfilesize.

o Fixed invalid inode and dev numbers for new files, was passing

the wrong path around.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/emx/include/InnoTekLIBC/sharedpm.h

    • Property cvs2svn:cvs-rev changed from 1.23 to 1.24
    r2047 r2048  
    163163#define __LIBC_SPM_INH_FHB_TYPE_END         (0)
    164164/** Standard bundle. */
    165 #define __LIBC_SPM_INH_FHB_TYPE_STANDARD    (0x10 | sizeof(unsigned))
     165#define __LIBC_SPM_INH_FHB_TYPE_STANDARD    (0x10 | (sizeof(unsigned) + sizeof(ino_t) + sizeof(dev_t)))
     166/** The old standard bundle. */
     167#define __LIBC_SPM_INH_FHB_TYPE_STANDARD_OLD (0x10 | sizeof(unsigned))
    166168/** Socket bundle, using the BSD 4.4 backend. */
    167169#define __LIBC_SPM_INH_FHB_TYPE_SOCKET_44   (0x20 | (sizeof(unsigned) + sizeof(unsigned short)))
     
    199201    /** The common bundle header. */
    200202    __LIBC_SPMINHFHBHDR Hdr;
    201     /** Array of flags of Hdr.cHandles entries. */
    202     unsigned            afFlags[1];
     203    /** Array Hdr.cHandles entries. */
     204    struct
     205    {
     206        /** The flags */
     207        unsigned            fFlags;
     208        /** The inode number. */
     209        ino_t               Inode;
     210        /** The device number. */
     211        dev_t               Dev;
     212    } aHandles[1];
    203213} __LIBC_SPMINHFHBSTD;
    204214#pragma pack()
    205215/** Pointer to SPM standard filehandle inherit bundle. */
    206216typedef __LIBC_SPMINHFHBSTD *__LIBC_PSPMINHFHBSTD;
     217
     218/**
     219 * SPM standard filehandle inherit bundle
     220 * This is used for OS/2 filehandles which only needs flags
     221 * transfered.
     222 */
     223#pragma pack(1)
     224typedef struct __libc_SPMInhFHOld
     225{
     226    /** The common bundle header. */
     227    __LIBC_SPMINHFHBHDR Hdr;
     228    /** Array of flags of Hdr.cHandles entries. */
     229    unsigned            afFlags[1];
     230} __LIBC_SPMINHFHBSTDOLD;
     231#pragma pack()
     232/** Pointer to SPM standard filehandle inherit bundle. */
     233typedef __LIBC_SPMINHFHBSTDOLD *__LIBC_PSPMINHFHBSTDOLD;
    207234
    208235/**
Note: See TracChangeset for help on using the changeset viewer.