Bug #103491
closedInfinite call on copy if prependAtCopy field is an integer
0%
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.
Updated by Stefan Bürk 7 months ago
- Status changed from New to Needs Feedback
Can I ask if it is possible for you to provide a more detailed
description how to configure something or how to reproduce this
within a CORE monorepo installation ?
At least configuration for table/field (at best for core tables)
which needs to be adjusted and what to do to reproduce this ?
Updated by Garvin Hicking 3 months ago
If you enable 'prependAtCopy' with anything, what would you expect when your 'label' field is set to an integer? IMO this sounds like a wrong TCA setup, were you should actually not use 'prependAtCopy'.
Updated by Benni Mack about 6 hours ago
- Status changed from Needs Feedback to Rejected
Closing this issue do to lack of feedback. In TYPO3 v13 there is a dedicated "type=number" field, where prependAtCopy should not work anymore.