TIP: Click on subject to list as thread! ANSI
echo: fidosoft.husky
to: Markus Reschke
from: Torsten Bamberg
date: 2015-07-08 23:51:22
subject: fastlst compilation err

Hallo Markus!

Mittwoch, den 08. Juli 2015 18:22, Markus Reschke schrieb an Torsten Bamberg:

 TB>> dosfind.cc:105: error: 'struct FLFFIND' has no member named
 TB>> 'longname'

 MR> Look for structure FLFFIND and add:
 MR>   char        *longname;
 MR> This is what the compiler told you ;)
Aehm, thanks a lot. :-)
At this point it's getting strange:
BTW: I compared the sourcetree with the first availeble dosfind.cc on
sourceforge, and there are the same lines as shown underneath.
Probably it is a very old fault, because fastlst2.03 was never compiled for
os/2 with emx-gcc. And I'm not used to write c++.

-+- Anfang compile.log -+-
dosfind.cc: In function `unsigned int _DosFindFirst(const char*, unsigned int,
   FLFFIND*)':
dosfind.cc:264: error: invalid conversion from `const char*' to `const
unsigned char*'
-+- Ende compile.log -+-


-+- Anfang dosfind.cc -+-

void Dos2My (FLFFIND *buf)
{
#if defined (__OS2__)
[...]

unsigned _DosFindFirst (pcsz path, unsigned attributes, FLFFIND *buffer)
{
    SetAttrMask (attributes, buffer);

#if defined (__OS2__)

    if (buffer->flags & FF_LONGNAME) {
        int fst = QueryFS (path);
        if ((fst != QFS_FAT) && (fst != QFS_NET_EA))
            buffer->flags &= ~FF_LONGNAME;
    }

    if (buffer->flags & FF_LONGNAME) {
        buffer->bufsize = sizeof (FILEFINDEABUF);
        buffer->infolevel = FIL_QUERYEASFROMLIST;
        buffer->ffeab = new FILEFINDEABUF;
    } else {
        buffer->bufsize = sizeof (FILEFINDBUF3);
        buffer->infolevel = FIL_STANDARD;
        buffer->ffb3 = new FILEFINDBUF3;
    }

    if (buffer->flags & FF_LONGNAME) {       // setup the EAOP2
        PEAOP2 eaop2 = &buffer->ffeab->eaop2;
        int eanamelen = strlen (EA_LONGNAME);
        int gea2listsize = sizeof (GEA2LIST) + eanamelen;
        eaop2->fpGEA2List = (PGEA2LIST) new byte[gea2listsize];
        eaop2->fpFEA2List = NULL;
        eaop2->fpGEA2List->cbList = gea2listsize;
        eaop2->fpGEA2List->list[0].oNextEntryOffset = 0;
        eaop2->fpGEA2List->list[0].cbName = eanamelen;
        strcpy (eaop2->fpGEA2List->list[0].szName, EA_LONGNAME);
    }

    ULONG FindCount = 1;
    buffer->DirHandle = HDIR_CREATE;
    if (DosFindFirst (path, &buffer->DirHandle,
        FILE_ARCHIVED|FILE_DIRECTORY|FILE_SYSTEM|FILE_HIDDEN|FILE_READONLY,
>        buffer->ff, buffer->bufsize, &FindCount, buffer->infolevel))

#elif defined (__NT__)
[...]
-+- Ende dosfind.cc -+-

 MR> Regards,
 MR> Markus
Bye/2 Torsten

... MAILBOX02: Up 05d 10h 43m (BTUp2V1.5)
--- GoldED+/EMX 1.1.4.7
* Origin: DatenBahn BBS (2:240/5832)
SEEN-BY: 154/10 203/0 227/51 230/0 240/1661 5138 5832 5853 249/303 261/38
SEEN-BY: 280/464 5003 292/854 423/120 633/267 280 640/384 712/550 848 770/1
SEEN-BY: 2432/390 2454/119
@PATH: 240/5832 280/464 712/848 633/267

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.