Index: trunk/src/VBox/Disassembler/Disasm.cpp
===================================================================
--- trunk/src/VBox/Disassembler/Disasm.cpp	(revision 41885)
+++ trunk/src/VBox/Disassembler/Disasm.cpp	(revision 41886)
@@ -95,5 +95,9 @@
                              PDISSTATE pDis, uint32_t *pcbInstr, char *pszOutput, size_t cbOutput)
 {
-    int rc = DISInstEx(uInstrAddr, enmCpuMode, uFilter, pfnReadBytes, pvUser, pDis, pcbInstr);
+    /* Don't filter if formatting is desired. */
+    if (uFilter !=  DISOPTYPE_ALL && pszOutput && cbOutput)
+        uFilter == DISOPTYPE_ALL;
+
+    int rc = DISInstrEx(uInstrAddr, enmCpuMode, uFilter, pfnReadBytes, pvUser, pDis, pcbInstr);
     if (RT_SUCCESS(rc) && pszOutput && cbOutput)
     {
Index: trunk/src/VBox/Disassembler/DisasmCore.cpp
===================================================================
--- trunk/src/VBox/Disassembler/DisasmCore.cpp	(revision 41885)
+++ trunk/src/VBox/Disassembler/DisasmCore.cpp	(revision 41886)
@@ -2408,5 +2408,5 @@
 
 /**
- * Internal worker for DISInstEx.
+ * Internal worker for DISInstrEx and DISInstrWithPrefetchedBytes.
  *
  * @returns VBox status code.
@@ -2627,7 +2627,7 @@
  *                          is also stored in PDISSTATE::cbInstr.)  Optional.
  */
-DISDECL(int) DISInstEx(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
-                       PFNDISREADBYTES pfnReadBytes, void *pvUser,
-                       PDISSTATE pDis, uint32_t *pcbInstr)
+DISDECL(int) DISInstrEx(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
+                        PFNDISREADBYTES pfnReadBytes, void *pvUser,
+                        PDISSTATE pDis, uint32_t *pcbInstr)
 {
 
@@ -2656,8 +2656,8 @@
  *                          is also stored in PDISSTATE::cbInstr.)  Optional.
  */
-DISDECL(int) DISInstWithPrefetchedBytes(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
-                                        void const *pvPrefetched, size_t cbPretched,
-                                        PFNDISREADBYTES pfnReadBytes, void *pvUser,
-                                        PDISSTATE pDis, uint32_t *pcbInstr)
+DISDECL(int) DISInstrWithPrefetchedBytes(RTUINTPTR uInstrAddr, DISCPUMODE enmCpuMode, uint32_t fFilter,
+                                         void const *pvPrefetched, size_t cbPretched,
+                                         PFNDISREADBYTES pfnReadBytes, void *pvUser,
+                                         PDISSTATE pDis, uint32_t *pcbInstr)
 {
     PCDISOPCODE paOneByteMap = disInitializeState(pDis, uInstrAddr, enmCpuMode, fFilter, pfnReadBytes, pvUser);
@@ -2703,5 +2703,5 @@
                                 PDISSTATE pDis, uint32_t *pcbInstr)
 {
-    return DISInstEx(uInstrAddr, enmCpuMode, DISOPTYPE_ALL, pfnReadBytes, pvUser, pDis, pcbInstr);
+    return DISInstrEx(uInstrAddr, enmCpuMode, DISOPTYPE_ALL, pfnReadBytes, pvUser, pDis, pcbInstr);
 }
 
@@ -2727,5 +2727,5 @@
 DISDECL(int) DISInstr(const void *pvInstr, DISCPUMODE enmCpuMode, PDISSTATE pDis, uint32_t *pcbInstr)
 {
-    return DISInstEx((uintptr_t)pvInstr, enmCpuMode, DISOPTYPE_ALL, NULL /*pfnReadBytes*/, NULL /*pvUser*/, pDis, pcbInstr);
-}
-
+    return DISInstrEx((uintptr_t)pvInstr, enmCpuMode, DISOPTYPE_ALL, NULL /*pfnReadBytes*/, NULL /*pvUser*/, pDis, pcbInstr);
+}
+
Index: trunk/src/VBox/Disassembler/testcase/tstDisasm-1.cpp
===================================================================
--- trunk/src/VBox/Disassembler/testcase/tstDisasm-1.cpp	(revision 41885)
+++ trunk/src/VBox/Disassembler/testcase/tstDisasm-1.cpp	(revision 41886)
@@ -76,6 +76,6 @@
         uint32_t        cbOnly = 1;
         DISSTATE        DisOnly;
-        rc = DISInstWithPrefetchedBytes((uintptr_t)&pabInstrs[off], enmDisCpuMode,  0 /*fFilter - none */,
-                                        Dis.abInstr, Dis.cbCachedInstr, NULL, NULL, &DisOnly, &cbOnly);
+        rc = DISInstrWithPrefetchedBytes((uintptr_t)&pabInstrs[off], enmDisCpuMode,  0 /*fFilter - none */,
+                                         Dis.abInstr, Dis.cbCachedInstr, NULL, NULL, &DisOnly, &cbOnly);
 
         RTTESTI_CHECK_RC(rc, VINF_SUCCESS);
Index: trunk/src/VBox/Disassembler/testcase/tstDisasm-2.cpp
===================================================================
--- trunk/src/VBox/Disassembler/testcase/tstDisasm-2.cpp	(revision 41885)
+++ trunk/src/VBox/Disassembler/testcase/tstDisasm-2.cpp	(revision 41886)
@@ -364,7 +364,7 @@
             uint8_t  abInstr[sizeof(State.Dis.abInstr)];
             memcpy(abInstr, State.Dis.abInstr, sizeof(State.Dis.abInstr));
-            int rcOnly = DISInstWithPrefetchedBytes(State.uAddress, enmCpuMode, 0 /*fFilter - none */,
-                                                    abInstr, State.Dis.cbCachedInstr, MyDisasInstrRead, &State,
-                                                    &State.Dis, &cbInstrOnly);
+            int rcOnly = DISInstrWithPrefetchedBytes(State.uAddress, enmCpuMode, 0 /*fFilter - none */,
+                                                     abInstr, State.Dis.cbCachedInstr, MyDisasInstrRead, &State,
+                                                     &State.Dis, &cbInstrOnly);
             if (   rcOnly != rc
                 || cbInstrOnly != State.cbInstr)
Index: trunk/src/VBox/VMM/VMMR3/CSAM.cpp
===================================================================
--- trunk/src/VBox/VMM/VMMR3/CSAM.cpp	(revision 41885)
+++ trunk/src/VBox/VMM/VMMR3/CSAM.cpp	(revision 41886)
@@ -807,6 +807,6 @@
                                ~(DISOPTYPE_INVALID | DISOPTYPE_HARMLESS | DISOPTYPE_RRM_MASK),
                                pCpu, pcbInstr, pszOutput, cbOutput);
-    return DISInstEx(InstrGC, enmCpuMode, ~(DISOPTYPE_INVALID | DISOPTYPE_HARMLESS | DISOPTYPE_RRM_MASK),
-                     csamR3ReadBytes, &DisInfo, pCpu, pcbInstr);
+    return DISInstrEx(InstrGC, enmCpuMode, ~(DISOPTYPE_INVALID | DISOPTYPE_HARMLESS | DISOPTYPE_RRM_MASK),
+                      csamR3ReadBytes, &DisInfo, pCpu, pcbInstr);
 #endif
 }
