From 03c046d1d521ebe253b612838eef5af8b5220365 Mon Sep 17 00:00:00 2001 From: Jouk Jansen Date: Tue, 26 Sep 2000 10:49:41 +0000 Subject: [PATCH] Committing in . Modified Files: wxWindows/descrip.mms wxWindows/src/common/filefn.cpp Filename problem on VMS fixed. ---------------------------------------------------------------------- git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@8419 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- descrip.mms | 4 ++-- src/common/filefn.cpp | 45 ++++++++++++++++++++++++++++++++----------- 2 files changed, 36 insertions(+), 13 deletions(-) diff --git a/descrip.mms b/descrip.mms index b1daf37df8..533e7916d8 100644 --- a/descrip.mms +++ b/descrip.mms @@ -14,10 +14,10 @@ set def [.wxwindows] all : - make motif + make gtk purge [...] delete [...]*.obj; - make gtk + make motif purge [...] delete [...]*.obj; diff --git a/src/common/filefn.cpp b/src/common/filefn.cpp index 9c79a5d13a..4adda91470 100644 --- a/src/common/filefn.cpp +++ b/src/common/filefn.cpp @@ -745,10 +745,11 @@ wxPathOnly (wxChar *path) { 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; } @@ -793,10 +794,11 @@ wxString wxPathOnly (const wxString& path) { 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); } @@ -1261,7 +1263,10 @@ bool wxGetTempFileName(const wxString& prefix, wxString& buf) 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 @@ -1276,11 +1281,29 @@ wxString wxFindFirstFile(const wxChar *spec, int flags) // 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 ) { -- 2.45.2