Missing locking when adding/removing package nodes

This commit is contained in:
Ingo Weinhold
2011-11-25 06:18:10 +01:00
parent 214d8aec13
commit 265b7e0dfc
@@ -1029,6 +1029,7 @@ Volume::_AddPackageNode(Directory* directory, PackageNode* packageNode,
} }
BReference<Node> nodeReference(node); BReference<Node> nodeReference(node);
NodeWriteLocker nodeWriteLocker(node);
status_t error = unpackingNode->AddPackageNode(packageNode); status_t error = unpackingNode->AddPackageNode(packageNode);
if (error != B_OK) { if (error != B_OK) {
@@ -1075,6 +1076,7 @@ Volume::_RemovePackageNode(Directory* directory, PackageNode* packageNode,
return; return;
BReference<Node> nodeReference(node); BReference<Node> nodeReference(node);
NodeWriteLocker nodeWriteLocker(node);
PackageNode* headPackageNode = unpackingNode->GetPackageNode(); PackageNode* headPackageNode = unpackingNode->GetPackageNode();
unpackingNode->RemovePackageNode(packageNode); unpackingNode->RemovePackageNode(packageNode);