git.delta.rocks / unique-network / refs/commits / 68c3995040db

difftreelog

fix check token children in XCM extensions

Daniel Shiposha2023-10-25parent: #0e38a03.patch.diff
in: master

2 files changed

modifiedpallets/common/src/lib.rsdiffbeforeafterboth
--- a/pallets/common/src/lib.rs
+++ b/pallets/common/src/lib.rs
@@ -2384,6 +2384,10 @@
 			return unsupported!(T);
 		}
 
+		if self.token_has_children(token) {
+			return unsupported!(T);
+		}
+
 		self.transfer_item_internal(depositor, from, to, token, amount, nesting_budget)
 	}
 
modifiedpallets/foreign-assets/src/lib.rsdiffbeforeafterboth
396 let token_id = Self::asset_instance_to_token_id(collection_id, asset_instance)?396 let token_id = Self::asset_instance_to_token_id(collection_id, asset_instance)?
397 .ok_or(XcmError::AssetNotFound)?;397 .ok_or(XcmError::AssetNotFound)?;
398
399 if xcm_ext.token_has_children(token_id) {
400 return Err(XcmError::Unimplemented);
401 }
402398
403 let depositor = &from;399 let depositor = &from;
404 let to = Self::pallet_account();400 let to = Self::pallet_account();