From 1ba6928313c3fa25f3b6719a4dfdc9471e72d359 Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Fri, 8 Apr 2016 16:00:26 +0000 Subject: Rewrite filename_ext.cxx for the driver model. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11556 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/drivers/WinAPI/Fl_WinAPI_System_Driver.H | 1 + src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx | 10 ++++++++++ 2 files changed, 11 insertions(+) (limited to 'src/drivers') diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H index 8203317ac..3e5f06d39 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H +++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.H @@ -74,6 +74,7 @@ public: virtual int filename_absolute(char *to, int tolen, const char *from); virtual int filename_isdir(const char* n); virtual int filename_isdir_quick(const char* n); + virtual const char *filename_ext(const char *buf); }; #endif // FL_WINAPI_SYSTEM_DRIVER_H diff --git a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx index 693fd296d..246a26521 100644 --- a/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx +++ b/src/drivers/WinAPI/Fl_WinAPI_System_Driver.cxx @@ -648,6 +648,16 @@ int Fl_WinAPI_System_Driver::filename_isdir_quick(const char* n) return filename_isdir(n); } +const char *Fl_WinAPI_System_Driver::filename_ext(const char *buf) { + const char *q = 0; + const char *p = buf; + for (p = buf; *p; p++) { + if (isdirsep(*p) ) q = 0; + else if (*p == '.') q = p; + } + return q ? q : p; +} + // // End of "$Id$". // -- cgit v1.2.3