A few little tweaks for SkyOS unit tests & configure robustitude (i.e. relying on stdint.h (if present) to tell us which intrinsic type is 64 bits)
This commit is contained in:
parent
03bca0ebd4
commit
078bf28164
|
@ -36,35 +36,49 @@
|
|||
|
||||
#include "platform.h"
|
||||
|
||||
#if HAVE_STDINT_H
|
||||
#include <stdint.h>
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// standard TSS types
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
typedef unsigned char byte ; // platform-independent
|
||||
typedef unsigned char byte ; // platform-independent
|
||||
|
||||
typedef signed char int8 ;
|
||||
typedef short int16 ;
|
||||
typedef float float32 ;
|
||||
typedef double float64 ;
|
||||
typedef unsigned char uint8 ;
|
||||
typedef unsigned short uint16 ;
|
||||
typedef unsigned char uint8 ;
|
||||
typedef unsigned short uint16 ;
|
||||
|
||||
#if HAVE_STDINT_H
|
||||
typedef int32_t int32 ;
|
||||
typedef uint32_t uint32 ;
|
||||
|
||||
#elif SIZEOF_INT == 4
|
||||
typedef int int32 ;
|
||||
typedef unsigned int uint32 ;
|
||||
|
||||
#if SIZEOF_INT == 4
|
||||
typedef int int32 ;
|
||||
typedef unsigned int uint32 ;
|
||||
#elif SIZEOF_LONG == 4
|
||||
typedef long int32 ;
|
||||
typedef unsigned long uint32 ;
|
||||
typedef long int32 ;
|
||||
typedef unsigned long uint32 ;
|
||||
#else
|
||||
# error "I don't seem to have a 32-bit integer type on this system."
|
||||
#endif
|
||||
|
||||
#if SIZEOF_LONG == 8
|
||||
#if HAVE_STDINT_H
|
||||
typedef int64_t int64 ;
|
||||
typedef uint64_t uint64 ;
|
||||
#elif SIZEOF_LONG == 8
|
||||
typedef long int64 ;
|
||||
typedef unsigned long uint64 ;
|
||||
typedef unsigned long uint64 ;
|
||||
#elif SIZEOF_LONG_LONG == 8
|
||||
typedef long long int64 ;
|
||||
typedef unsigned long long uint64 ;
|
||||
typedef unsigned long long uint64 ;
|
||||
#else
|
||||
# error "I don't seem to have a 64-bit integer type on this system."
|
||||
#endif
|
||||
|
|
|
@ -111,7 +111,11 @@ bool cFSPropCalc::GetSymLinkStr(const TSTRING& strName, cArchive& arch, size_t s
|
|||
|
||||
//Sadly if buf isn't big enough readlink 'succeeds' by truncating the string, so the only
|
||||
// clue your buffer might be too small is if you maxed it out. So we try again, within reason.
|
||||
#if IS_SKYOS
|
||||
if((size_t)rtn >= size-1) //SkyOS wants space to null terminate the string it hands back, which is nice, I guess.
|
||||
#else
|
||||
if((size_t)rtn == size)
|
||||
#endif
|
||||
{
|
||||
if(size < 128*TW_PATH_SIZE)
|
||||
return GetSymLinkStr(strName, arch, size*2);
|
||||
|
|
|
@ -146,9 +146,10 @@ void TestGetSymLinkStr()
|
|||
std::string link = TwTestPath("linky");
|
||||
|
||||
int fd = creat(file.c_str(), 0777);
|
||||
TEST(fd >= 0);
|
||||
close(fd);
|
||||
|
||||
symlink(file.c_str(), link.c_str());
|
||||
TEST(0 == symlink(file.c_str(), link.c_str()));
|
||||
|
||||
cMemoryArchive arch(1024*1024);
|
||||
TEST(cFSPropCalc::GetSymLinkStr(link, arch, 8));
|
||||
|
|
|
@ -155,8 +155,10 @@ void TestGetHostID()
|
|||
|
||||
void TestGetCurrentUserName()
|
||||
{
|
||||
#if !IS_SKYOS // SkyOS breaks on this, for as-yet-unknown reasons
|
||||
TSTRING username;
|
||||
TEST( iFSServices::GetInstance()->GetCurrentUserName(username) );
|
||||
TEST( iFSServices::GetInstance()->GetCurrentUserName(username) )
|
||||
#endif
|
||||
}
|
||||
|
||||
void TestGetIPAddress()
|
||||
|
|
Loading…
Reference in New Issue