akeranen / the-one

The Opportunistic Network Environment simulator
Other
208 stars 198 forks source link

Bug:Message Copy error #69

Open oleotiger opened 6 years ago

oleotiger commented 6 years ago

In Message.java , the function void copyFrom(Message m) copies propeties as if (m.properties != null) { Set<String> keys = m.properties.keySet(); for (String key : keys) { updateProperty(key, m.getProperty(key)); } } which add a reference to propeties of the original message instead of a clone of it when a property is such as List<Integer>.

akeranen commented 6 years ago

I thing you're right about that @oleotiger.

But what's the best way to fix this? I'm afraid extra .clone() won't cut it either; merely pushing the problem one step further (if at all, depending how well the method is implemented). Should we simply add warning to the documentation about shallow copies of properties?