Changeset 841 for trunk/dll/init.c


Ignore:
Timestamp:
Sep 23, 2007, 6:27:51 PM (18 years ago)
Author:
Gregg Young
Message:

This implements large file support; The wrappers to allow WARP3 compatibility are not done so this will not run on Warp3or Warp 4 pre fixpack 12(?)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dll/init.c

    r838 r841  
    5252#define INCL_GPI
    5353#define INCL_DOSERRORS
     54#define INCL_LONGLONG
    5455#include <os2.h>
    5556#include <os2me.h>
     
    8182  CHAR *pp;
    8283  FILE *fp;
    83   FILEFINDBUF3 ffb;
     84  FILEFINDBUF3L ffb;
    8485  ULONG nm;
    8586  ULONG size = sizeof(SwapperDat);
     
    9697                       FILE_NORMAL | FILE_ARCHIVED |
    9798                       FILE_HIDDEN | FILE_SYSTEM | FILE_READONLY,
    98                        &ffb, sizeof(ffb), &nm, FIL_STANDARD);
     99                       &ffb, sizeof(ffb), &nm, FIL_STANDARDL);
    99100    if (!rc) {
    100101      DosFindClose(hdir);
     
    157158                                 FILE_NORMAL | FILE_ARCHIVED |
    158159                                 FILE_HIDDEN | FILE_SYSTEM | FILE_READONLY,
    159                                  &ffb, sizeof(ffb), &nm, FIL_STANDARD)) {
     160                                 &ffb, sizeof(ffb), &nm, FIL_STANDARDL)) {
    160161                DosFindClose(hdir);
    161162                PrfWriteProfileString(fmprof,
     
    181182  CHAR *env;
    182183  CHAR stringfile[CCHMAXPATH];
    183   FILESTATUS3 fsa;
     184  FILESTATUS3L fsa;
    184185  APIRET rc;
    185186
     
    194195    if (env) {
    195196      DosError(FERR_DISABLEHARDERR);
    196       rc = DosQueryPathInfo(env, FIL_STANDARD, &fsa, sizeof(fsa));
     197      rc = DosQueryPathInfo(env, FIL_STANDARDL, &fsa, sizeof(fsa));
    197198      if (!rc) {
    198199        if (fsa.attrFile & FILE_DIRECTORY) {
    199200          BldFullPathName(stringfile, env, "FM3RES.STR");
    200201          DosError(FERR_DISABLEHARDERR);
    201           if (DosQueryPathInfo(stringfile, FIL_STANDARD, &fsa, sizeof(fsa)))
     202          if (DosQueryPathInfo(stringfile, FIL_STANDARDL, &fsa, sizeof(fsa)))
    202203            strcpy(stringfile, "FM3RES.STR");
    203204        }
     
    295296  CHAR *env;
    296297  CHAR stringfile[CCHMAXPATH];
    297   FILESTATUS3 fsa;
     298  FILESTATUS3L fsa;
    298299  APIRET rc;
    299300
     
    307308    if (env) {
    308309      DosError(FERR_DISABLEHARDERR);
    309       rc = DosQueryPathInfo(env, FIL_STANDARD, &fsa, sizeof(fsa));
     310      rc = DosQueryPathInfo(env, FIL_STANDARDL, &fsa, sizeof(fsa));
    310311      if (!rc) {
    311312        if (fsa.attrFile & FILE_DIRECTORY) {
    312313          BldFullPathName(stringfile, env, "FM3RES.STR");
    313314          DosError(FERR_DISABLEHARDERR);
    314           if (DosQueryPathInfo(stringfile, FIL_STANDARD, &fsa, sizeof(fsa)))
     315          if (DosQueryPathInfo(stringfile, FIL_STANDARDL, &fsa, sizeof(fsa)))
    315316            strcpy(stringfile, "FM3RES.STR");
    316317        }
     
    409410  HDIR search_handle;
    410411  ULONG num_matches;
    411   static FILEFINDBUF3 f;
     412  static FILEFINDBUF3L f;
    412413
    413414  StopTimer();
     
    449450                       FILE_SYSTEM | FILE_READONLY | FILE_HIDDEN |
    450451                       FILE_ARCHIVED,
    451                        &f, sizeof(FILEFINDBUF3), &num_matches, FIL_STANDARD)) {
     452                       &f, sizeof(FILEFINDBUF3L), &num_matches, FIL_STANDARDL)) {
    452453      do {
    453454        strcpy(enddir, f.achName);
     
    460461      }
    461462      while (!xDosFindNext(search_handle,
    462                            &f, sizeof(FILEFINDBUF3), &num_matches));
     463                           &f, sizeof(FILEFINDBUF3L), &num_matches));
    463464      DosFindClose(search_handle);
    464465    }
     
    478479                     FILE_SYSTEM | FILE_READONLY | FILE_HIDDEN |
    479480                     FILE_ARCHIVED,
    480                      &f, sizeof(FILEFINDBUF3), &num_matches, FIL_STANDARD)) {
     481                     &f, sizeof(FILEFINDBUF3L), &num_matches, FIL_STANDARDL)) {
    481482    do {
    482483      if (!(f.attrFile & FILE_DIRECTORY)) {
     
    486487    }
    487488    while (!xDosFindNext(search_handle,
    488                          &f, sizeof(FILEFINDBUF3), &num_matches));
     489                         &f, sizeof(FILEFINDBUF3L), &num_matches));
    489490    DosFindClose(search_handle);
    490491  }
     
    515516  ULONG RVMinor = 0;
    516517  ULONG ret = 0;
    517   FILESTATUS3 fs3;                      // 25 Aug 07 SHL
     518  FILESTATUS3L fs3;                     // 25 Aug 07 SHL
    518519  PSZ env;
    519520  CHAR dllfile[CCHMAXPATH];
     
    533534  if (env) {
    534535    DosError(FERR_DISABLEHARDERR);
    535     rc = DosQueryPathInfo(env, FIL_STANDARD, &fs3, sizeof(fs3));
     536    rc = DosQueryPathInfo(env, FIL_STANDARDL, &fs3, sizeof(fs3));
    536537    if (!rc) {
    537538      if (fs3.attrFile & FILE_DIRECTORY) {
    538539        BldFullPathName(dllfile, env, "FM3RES");        // 23 Aug 07 SHL
    539540        DosError(FERR_DISABLEHARDERR);
    540         if (DosQueryPathInfo(dllfile, FIL_STANDARD, (PVOID)&fs3, (ULONG)sizeof(fs3)))
     541        if (DosQueryPathInfo(dllfile, FIL_STANDARDL, (PVOID)&fs3, (ULONG)sizeof(fs3)))
    541542          strcpy(dllfile, "FM3RES");
    542543      }
     
    648649      strcpy(inipath, env);
    649650      DosError(FERR_DISABLEHARDERR);
    650       rc = DosQueryPathInfo(inipath, FIL_STANDARD, &fs3, sizeof(fs3));
     651      rc = DosQueryPathInfo(inipath, FIL_STANDARDL, &fs3, sizeof(fs3));
    651652      if (!rc) {
    652653        if (fs3.attrFile & FILE_DIRECTORY)
     
    667668    DosError(FERR_DISABLEHARDERR);
    668669
    669     if (!DosQueryPathInfo(inipath, FIL_STANDARD, &fs3, sizeof(fs3))) {
     670    if (!DosQueryPathInfo(inipath, FIL_STANDARDL, &fs3, sizeof(fs3))) {
    670671      fIniExisted = TRUE;
    671672      if (fs3.attrFile & (FILE_READONLY | FILE_HIDDEN | FILE_SYSTEM)) {
    672673        fs3.attrFile &= ~(FILE_READONLY | FILE_HIDDEN | FILE_SYSTEM);
    673         rc = xDosSetPathInfo(inipath, FIL_STANDARD, &fs3, sizeof(fs3), 0);
     674        rc = xDosSetPathInfo(inipath, FIL_STANDARDL, &fs3, sizeof(fs3), 0);
    674675        if (rc) {
    675676          Dos_Error(MB_ENTER, rc, HWND_DESKTOP, pszSrcFile, __LINE__,
     
    724725      strcpy(helppath, env);
    725726      DosError(FERR_DISABLEHARDERR);
    726       rc = DosQueryPathInfo(helppath, FIL_STANDARD, &fs3, sizeof(fs3));
     727      rc = DosQueryPathInfo(helppath, FIL_STANDARDL, &fs3, sizeof(fs3));
    727728      if (!rc) {
    728729        if (fs3.attrFile & FILE_DIRECTORY) {
Note: See TracChangeset for help on using the changeset viewer.