summaryrefslogtreecommitdiffstats
path: root/src/VBox/Runtime/common/path/RTPathGlob.cpp
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-16 22:55:52 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-16 22:55:52 +0000
commitcd47c2446f1a9dee96610f298989848f8986a8be (patch)
tree02c30d62a9164987d0aaba2f72c58a50053205d6 /src/VBox/Runtime/common/path/RTPathGlob.cpp
parentReleasing progress-linux version 7.0.14-dfsg-4~progress7.99u1. (diff)
downloadvirtualbox-cd47c2446f1a9dee96610f298989848f8986a8be.tar.xz
virtualbox-cd47c2446f1a9dee96610f298989848f8986a8be.zip
Merging upstream version 7.0.16-dfsg.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/VBox/Runtime/common/path/RTPathGlob.cpp')
-rw-r--r--src/VBox/Runtime/common/path/RTPathGlob.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/VBox/Runtime/common/path/RTPathGlob.cpp b/src/VBox/Runtime/common/path/RTPathGlob.cpp
index 46a634b2..16527527 100644
--- a/src/VBox/Runtime/common/path/RTPathGlob.cpp
+++ b/src/VBox/Runtime/common/path/RTPathGlob.cpp
@@ -486,7 +486,7 @@ static DECLCALLBACK(int) rtPathVarQuery_Path(uint32_t iItem, char *pszBuf, size_
#endif
if (rc == VERR_BUFFER_OVERFLOW)
{
- for (uint32_t iTry = 0; iTry < 10; iTry++)
+ for (uint32_t iTry = 0;; iTry++)
{
size_t cbPathBuf = RT_ALIGN_Z(cchActual + 1 + 64 * iTry, 64);
pszPathFree = (char *)RTMemTmpAlloc(cbPathBuf);
@@ -495,6 +495,8 @@ static DECLCALLBACK(int) rtPathVarQuery_Path(uint32_t iItem, char *pszBuf, size_
break;
RTMemTmpFree(pszPathFree);
AssertReturn(cchActual >= cbPathBuf, VERR_INTERNAL_ERROR_3);
+ if (iTry >= 9)
+ return rc;
}
pszPath = pszPathFree;
}