Index: /trunk/src/VBox/Devices/Audio/DrvAudioCommon.cpp
===================================================================
--- /trunk/src/VBox/Devices/Audio/DrvAudioCommon.cpp	(revision 70583)
+++ /trunk/src/VBox/Devices/Audio/DrvAudioCommon.cpp	(revision 70584)
@@ -1103,9 +1103,11 @@
         }
 
+        char szFileName[RTPATH_MAX + 1];
+        szFileName[0] = '\0';
+
         if (fFlags & PDMAUDIOFILENAME_FLAG_TS)
         {
-            char szTime[64];
             RTTIMESPEC time;
-            if (!RTTimeSpecToString(RTTimeNow(&time), szTime, sizeof(szTime)))
+            if (!RTTimeSpecToString(RTTimeNow(&time), szFileName, sizeof(szFileName)))
             {
                 rc = VERR_BUFFER_OVERFLOW;
@@ -1113,22 +1115,18 @@
             }
 
-            rc = DrvAudioHlpSanitizeFileName(szTime, sizeof(szTime));
+            rc = DrvAudioHlpSanitizeFileName(szFileName, sizeof(szFileName));
             if (RT_FAILURE(rc))
                 break;
 
-            rc = RTStrCat(szFilePath, sizeof(szFilePath), szTime);
+            rc = RTStrCat(szFileName, sizeof(szFileName), "-");
             if (RT_FAILURE(rc))
                 break;
-
-            rc = RTStrCat(szFilePath, sizeof(szFilePath), "-");
-            if (RT_FAILURE(rc))
-                break;
-        }
-
-        rc = RTStrCat(szFilePath, sizeof(szFilePath), pszName);
+        }
+
+        rc = RTStrCat(szFileName, sizeof(szFileName), pszName);
         if (RT_FAILURE(rc))
             break;
 
-        rc = RTStrCat(szFilePath, sizeof(szFilePath), "-");
+        rc = RTStrCat(szFileName, sizeof(szFileName), "-");
         if (RT_FAILURE(rc))
             break;
@@ -1136,5 +1134,5 @@
         char szInst[16];
         RTStrPrintf2(szInst, sizeof(szInst), "%RU32", uInstance);
-        rc = RTStrCat(szFilePath, sizeof(szFilePath), szInst);
+        rc = RTStrCat(szFileName, sizeof(szFileName), szInst);
         if (RT_FAILURE(rc))
             break;
@@ -1143,9 +1141,9 @@
         {
             case PDMAUDIOFILETYPE_RAW:
-                rc = RTStrCat(szFilePath, sizeof(szFilePath), ".pcm");
+                rc = RTStrCat(szFileName, sizeof(szFileName), ".pcm");
                 break;
 
             case PDMAUDIOFILETYPE_WAV:
-                rc = RTStrCat(szFilePath, sizeof(szFilePath), ".wav");
+                rc = RTStrCat(szFileName, sizeof(szFileName), ".wav");
                 break;
 
@@ -1155,4 +1153,8 @@
         }
 
+        if (RT_FAILURE(rc))
+            break;
+
+        rc = RTPathAppend(szFilePath, sizeof(szFilePath), szFileName);
         if (RT_FAILURE(rc))
             break;
