Project

General

Profile

Actions

Bug #103491

open

Infinite call on copy if prependAtCopy field is an integer

Added by NET engine about 1 month ago. Updated 7 days ago.

Status:
Needs Feedback
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 #1

Updated by Stefan Bürk 7 days 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 ?

Actions

Also available in: Atom PDF