Skip to content

Commit f3e702b

Browse files
notkoenVauff
authored andcommitted
detours: add edge case to chat timer detection (#410)
1 parent a423117 commit f3e702b

1 file changed

Lines changed: 14 additions & 6 deletions

File tree

src/detours.cpp

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -288,13 +288,21 @@ void SayChatMessageWithTimer(IRecipientFilter& filter, const char* pText, CCSPla
288288
uiNextWordLength = strlen(pNextWord);
289289
}
290290

291-
// Case: ... X sec(onds) ... or ... X min(utes) ...
292-
if (pNextWord != NULL && uiNextWordLength > 2 && uiCurrentValue > 0)
291+
// Case: ... X sec(onds) ... or ... X s ... or ... X min(utes) ...
292+
if (pNextWord != NULL && uiCurrentValue > 0)
293293
{
294-
if (pNextWord[0] == 's' && pNextWord[1] == 'e' && pNextWord[2] == 'c')
295-
uiTriggerTimerLength = uiCurrentValue;
296-
if (pNextWord[0] == 'm' && pNextWord[1] == 'i' && pNextWord[2] == 'n')
297-
uiTriggerTimerLength = uiCurrentValue * 60;
294+
if (uiNextWordLength == 1)
295+
{
296+
if (pNextWord[0] == 's')
297+
uiTriggerTimerLength = uiCurrentValue;
298+
}
299+
else if (uiNextWordLength > 2)
300+
{
301+
if (pNextWord[0] == 's' && pNextWord[1] == 'e' && pNextWord[2] == 'c')
302+
uiTriggerTimerLength = uiCurrentValue;
303+
if (pNextWord[0] == 'm' && pNextWord[1] == 'i' && pNextWord[2] == 'n')
304+
uiTriggerTimerLength = uiCurrentValue * 60;
305+
}
298306
}
299307

300308
// Case: ... Xs - only support up to 3 digit numbers (in seconds) for this timer parse method

0 commit comments

Comments
 (0)