diff --git a/src/ehwrite.cpp b/src/ehwrite.cpp
index 8708b481459beb5f4f18f38143efb3c241e23f4e..14614e4a20953c9b677ba9be56d310f3f3ee58fa 100644
--- a/src/ehwrite.cpp
+++ b/src/ehwrite.cpp
@@ -1053,7 +1053,7 @@ void EhWriterImpl_t<ptrsize>::ScoopifyEhOutput()
 		const auto start_addr=new AddressID_t(BaseObj_t::NOT_IN_DATABASE, BaseObj_t::NOT_IN_DATABASE, start_vo);
 		const auto end_vo=sec->get_address()+sec->get_size()-1;
 		const auto end_addr=new AddressID_t(BaseObj_t::NOT_IN_DATABASE, BaseObj_t::NOT_IN_DATABASE, end_vo);
-		const auto new_scoop=new DataScoop_t(BaseObj_t::NOT_IN_DATABASE, secname, start_addr,end_addr,NULL,4,false,data);
+		const auto new_scoop=new DataScoop_t(zipr_obj.GetFileIR()->GetMaxBaseID()+1, secname, start_addr,end_addr,NULL,4,false,data);
 
 		zipr_obj.GetFileIR()->GetAddresses().insert(start_addr);
 		zipr_obj.GetFileIR()->GetAddresses().insert(end_addr);
diff --git a/src/zipr.cpp b/src/zipr.cpp
index addf5e794a0bcb18339779ba873e0b7d63a80d05..f1b1f50710beb263544ef310d177341b6726eb7e 100644
--- a/src/zipr.cpp
+++ b/src/zipr.cpp
@@ -432,7 +432,7 @@ void ZiprImpl_t::CreateExecutableScoops(const std::map<RangeAddress_t, int> &ord
 			text_name=".text"; // use the name .text first.
 
 		text_contents.resize(text_end->GetVirtualOffset() - text_start->GetVirtualOffset()+1);
-		DataScoop_t* text_scoop=new DataScoop_t(BaseObj_t::NOT_IN_DATABASE, text_name,  text_start, text_end, NULL, 5, false, text_contents);
+		DataScoop_t* text_scoop=new DataScoop_t(m_firp->GetMaxBaseID()+1, text_name,  text_start, text_end, NULL, 5, false, text_contents);
 		m_firp->GetDataScoops().insert(text_scoop);
 	
 		cout<<"Adding scoop "<<text_scoop->GetName()<<hex<<" at "<<hex<<text_start->GetVirtualOffset()<<" - "<<text_end->GetVirtualOffset()<<endl;
@@ -3686,7 +3686,7 @@ void ZiprImpl_t::OutputBinaryFile(const string &name)
 		m_firp->GetAddresses().insert(textra_end);
 		string textra_contents;
 		textra_contents.resize(end_of_new_space-start_of_new_space);
-		DataScoop_t* textra_scoop=new DataScoop_t(BaseObj_t::NOT_IN_DATABASE, ".textra", textra_start, textra_end, NULL, 5, false, textra_contents);
+		DataScoop_t* textra_scoop=new DataScoop_t(m_firp->GetMaxBaseID()+1, ".textra", textra_start, textra_end, NULL, 5, false, textra_contents);
 		m_firp->GetDataScoops().insert(textra_scoop);
 
 		printf("Dumping addrs %p-%p\n", (void*)start_of_new_space, (void*)end_of_new_space);