#endif
#ifdef __WINDOWS__
- #include "windows.h"
+ #include <windows.h>
#endif
// ----------------------------------------------------------------------------
{
done = TRUE;
#ifdef __VMS__
- buf[i+1] = 0;
-#else
+ if ( path[i] == wxT(']') )
+ buf[i+1] = 0;
+ else
+#endif
buf[i] = 0;
-#endif
return buf;
}
{
done = TRUE;
#ifdef __VMS__
- buf[i+1] = 0;
-#else
+ if ( path[i] == wxT(']') )
+ buf[i+1] = 0;
+ else
+#endif
buf[i] = 0;
-#endif
return wxString(buf);
}
#endif // __WINDOWS__
wxStructStat st;
-
+#ifndef __VISAGECPP__
return wxStat(wxFNSTRINGCAST strPath.fn_str(), &st) == 0 &&
((st.st_mode & S_IFMT) == S_IFDIR);
+#else
+ // S_IFMT not supported in VA compilers.. st_mode is a 2byte value only
+ return wxStat(wxFNSTRINGCAST strPath.fn_str(), &st) == 0 &&
+ (st.st_mode == S_IFDIR);
+#endif
+
}
// Get a temporary filename, opening and closing the file.
wxString wxFindFirstFile(const wxChar *spec, int flags)
{
wxString result;
-
+#ifdef __VMS
+ wxChar *specvms = NULL;
+#endif
+
#if !defined( __VMS__ ) || ( __VMS_VER >= 70000000 )
if (gs_dirStream)
closedir(gs_dirStream); // edz 941103: better housekeping
// special case: path is really "/"
if ( !path && gs_strFileSpec[0u] == wxT('/') )
- path = wxT('/');
- // path is empty => Local directory
+#ifdef __VMS
+ {
+ wxStrcpy( specvms , wxT( "[000000]" ) );
+ gs_strFileSpec = specvms;
+ wxString path_vms(wxPathOnly(gs_strFileSpec));
+ path = path_vms;
+ }
+#else
+ path = wxT('/');
+#endif
+ // path is empty => Local directory
if ( !path )
- path = wxT('.');
-
+#ifdef __VMS
+ {
+ wxStrcpy( specvms , wxT( "[]" ) );
+ gs_strFileSpec = specvms;
+ wxString path_vms1(wxPathOnly(gs_strFileSpec));
+ path = path_vms1;
+ }
+#else
+ path = wxT('.');
+#endif
+
gs_dirStream = opendir(path.fn_str());
if ( !gs_dirStream )
{