+const char* FindExt (const char* Name)
+/* Return a pointer to the file extension in Name or NULL if there is none */
+{
+ const char* S;
+
+ /* Get the length of the name */
+ unsigned Len = strlen (Name);
+ if (Len < 2) {
+ return 0;
+ }
+
+ /* Get a pointer to the last character */
+ S = Name + Len - 1;
+
+ /* Search for the dot, beware of subdirectories */
+ while (S >= Name && *S != '.' && *S != '\\' && *S != '/') {
+ --S;
+ }
+
+ /* Did we find an extension? */
+ if (*S == '.') {
+ return S;
+ } else {
+ return 0;
+ }
+}
+
+
+
+const char* FindName (const char* Path)
+/* Return a pointer to the file name in Path. If there is no path leading to
+ * the file, the function returns Path as name.
+ */
+{
+ /* Get the length of the name */
+ int Len = strlen (Path);
+
+ /* Search for the path separator */
+ while (Len > 0 && Path[Len-1] != '\\' && Path[Len-1] != '/') {
+ --Len;
+ }
+
+ /* Return the name or path */
+ return Path + Len;
+}
+
+
+