mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
Prevent stock item being added as an installed item inside itself
This commit is contained in:
parent
ef23ab1abc
commit
a9f255be85
@ -715,17 +715,22 @@ class StockItem(MPTTModel):
|
|||||||
|
|
||||||
for item in items:
|
for item in items:
|
||||||
|
|
||||||
# Prevent recursion
|
# Prevent duplication or recursion
|
||||||
if item not in installed:
|
if item == self or item in installed:
|
||||||
installed.add(item)
|
continue
|
||||||
|
|
||||||
|
installed.add(item)
|
||||||
|
|
||||||
if cascade:
|
if cascade:
|
||||||
sub_items = item.get_installed_items(cascade=True)
|
sub_items = item.get_installed_items(cascade=True)
|
||||||
|
|
||||||
for sub_item in sub_items:
|
for sub_item in sub_items:
|
||||||
|
|
||||||
# Prevent recursion
|
# Prevent recursion
|
||||||
if sub_item not in installed:
|
if sub_item == self or sub_item in installed:
|
||||||
installed.add(sub_item)
|
continue
|
||||||
|
|
||||||
|
installed.add(sub_item)
|
||||||
|
|
||||||
return installed
|
return installed
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user