fix: delete Lead-linked Addresses on transaction deletion

The lead/address cleanup pre-escaped each address name before passing the
list into a query-builder .isin() filter, which escapes again. The
double-escaping produced `name IN ('''Addr''')`, matching nothing, so
Lead-linked Addresses were never deleted on either MariaDB or Postgres.

Pass the raw list straight into .isin() so the builder escapes once.
This commit is contained in:
Mihir Kandoi
2026-06-29 15:06:14 +05:30
parent 747374e767
commit 56a7ee6346

View File

@@ -702,8 +702,6 @@ class TransactionDeletionRecord(Document):
"Dynamic Link", filters={"link_name": ("in", leads)}, pluck="parent"
)
if addresses:
addresses = ["%s" % frappe.db.escape(addr) for addr in addresses]
address = qb.DocType("Address")
dl1 = qb.DocType("Dynamic Link")
dl2 = qb.DocType("Dynamic Link")