Project

General

Profile

Actions

Bug #103491

closed

Infinite call on copy if prependAtCopy field is an integer

Added by NET engine 8 months ago. Updated about 10 hours ago.

Status:
Rejected
Priority:
Should have
Assignee:
-
Category:
DataHandler aka TCEmain
Target version:
-
Start date:
2024-03-27
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
12
PHP Version:
Tags:
Complexity:
Is Regression:
Sprint Focus:

Description

If a record that is copied has TCA.TABLE.ctrl.prependAtCopy, and the label of that table (i.e., $headerField) is an integer, it triggers an infinite call of getCopyHeader() (DataHandler:3704).

The prepend string, added with a space, appears as follows: "2077 (copy 1)".
Within getCopyHeader():8944, an equality comparison is made with the integer field but as a string.
In my case, MariaDB reports error 1292: Truncated incorrect value, though the query returns 1.
What occurs is that the database truncates the value at the space to 2077 and processes it as such, which invariably returns 1.

Solution: The condition in copyRecord():3700 should be extended to include a string check.

Actions

Also available in: Atom PDF