Changeset 1170 for trunk/gsdl/lib


Ignore:
Timestamp:
2000-05-12T15:09:27+12:00 (24 years ago)
Author:
sjboddie
Message:

minor modifications to get web library compiling under VC++ 6.0

Location:
trunk/gsdl/lib
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl/lib/display.cpp

    r1076 r1170  
    2828/*
    2929   $Log$
     30   Revision 1.20  2000/05/12 03:09:23  sjboddie
     31   minor modifications to get web library compiling under VC++ 6.0
     32
    3033   Revision 1.19  2000/04/06 19:57:58  cs025
    3134   Correcting a correction - reinstated all lib files due to silly
     
    691694    // unicode text
    692695    // get the next two characters
    693     unsigned char c1 = 0, c2 = 0;
     696    char c1 = 0, c2 = 0;
    694697    if (!fin.eof()) fin.get(c1);
    695698    if (!fin.eof()) fin.get(c2);
     
    709712    // utf-8 text
    710713    // how many characters we get depends on what we find
    711     unsigned char c1 = 0, c2 = 0, c3 = 0;
     714    char c1 = 0, c2 = 0, c3 = 0;
    712715    while (!fin.eof()) {
    713716      fin.get(c1);
  • trunk/gsdl/lib/fileutil.cpp

    r1150 r1170  
    2828/*
    2929   $Log$
     30   Revision 1.16  2000/05/12 03:09:22  sjboddie
     31   minor modifications to get web library compiling under VC++ 6.0
     32
    3033   Revision 1.15  2000/05/04 08:27:28  sjboddie
    3134   modifications for windows ports of GCC
     
    121124  path2.erase (path2.begin(), here);
    122125 
    123   // return the concatenation of the two strings
    124   return path1 + path2;
     126  text_t fullpath = path1 + path2;
     127
     128  // make sure all the right slashes are used
     129  here = fullpath.begin();
     130  end = fullpath.end();
     131  while (here != end) {
     132#ifdef __WIN32__
     133    if (*here == '/') *here = '\\';
     134#else
     135    if (*here == '\\') *here = '/';
     136#endif
     137    here ++;
     138  }
     139  return fullpath;
    125140}
    126141
     
    142157bool file_exists (const text_t &filename) {
    143158  char *cstr = filename.getcstr();
     159#ifdef GSDL_USE_IOS_H
    144160  ifstream filestream (cstr, ios::in | ios::nocreate);
     161#else
     162  ifstream filestream (cstr, ios::in);
     163#endif
    145164  delete cstr;
    146165
     
    158177bool file_writable (const text_t &filename) {
    159178  char *cstr = filename.getcstr();
     179#ifdef GSDL_USE_IOS_H
    160180  ifstream filestream (cstr, ios::out | ios::nocreate);
     181#else
     182  ifstream filestream (cstr, ios::out);
     183#endif
    161184  delete cstr;
    162185
  • trunk/gsdl/lib/gsdlconf.h

    r1167 r1170  
    8080#endif
    8181
     82// mktemp
     83
     84#if !defined(__WIN32__) || defined(__GNUC__)
     85#include <unistd.h>
     86#define GSDL_MKTEMP(str) mktemp(str)
     87#else
     88#include <io.h>
     89#define GSDL_MKTEMP(str) _mktemp(str)
     90#endif
     91
     92
    8293
    8394// file locking
    8495
    8596#if defined(__WIN32__)
     97
     98#if !defined(LK_UNLOCK) && defined(LK_UNLCK)
     99#define LK_UNLOCK LK_UNLCK
     100#endif
     101
     102#if defined (GSDL_USE_IOS_H)
    86103#include <io.h>
    87104#include <sys/locking.h>
     105
    88106#if defined(__GNUC__)
    89107#define GSDL_GET_FILEDESC(str) str.filedesc()
     
    91109#define GSDL_GET_FILEDESC(str) str.fd()
    92110#endif
    93 #if !defined(LK_UNLOCK) && defined(LK_UNLCK)
    94 #define LK_UNLOCK LK_UNLCK
     111
     112#define GSDL_UNLOCK_FILE(fd) _locking(fd, LK_UNLCK, 200)
     113#define GSDL_LOCK_FILE(fd) lock_val = _locking(fd, LK_NBLCK, 200)
     114
     115#else
     116
     117// when using <fstream> (i.e. VC++ 6.0) I can't work out how
     118// to return a filedesc. File locking won't currently work
     119// for those windows compilers requiring GSDL_USE_IOS_H to
     120// not be set -- Stefan.
     121#define GSDL_GET_FILEDESC(str) 1
     122#define GSDL_LOCK_FILE(fd) lock_val = 0
     123#define GSDL_UNLOCK_FILE(fd) 0
    95124#endif
    96 #define GSDL_UNLOCK_FILE(fd) _locking(fd, LK_UNLOCK, 200)
    97 #define GSDL_LOCK_FILE(fd) lock_val = _locking(fd, LK_NBLCK, 200)
    98125
    99126#else
Note: See TracChangeset for help on using the changeset viewer.