diff --git a/android/app/src/main/java/app/organicmaps/bookmarks/data/FeatureId.java b/android/app/src/main/java/app/organicmaps/bookmarks/data/FeatureId.java index 180ac686e..cafa66568 100644 --- a/android/app/src/main/java/app/organicmaps/bookmarks/data/FeatureId.java +++ b/android/app/src/main/java/app/organicmaps/bookmarks/data/FeatureId.java @@ -93,6 +93,12 @@ public class FeatureId implements Parcelable return mFeatureIndex; } + public boolean isRealId() { + return !TextUtils.isEmpty(mMwmName) && + mMwmVersion >= 0 && + mFeatureIndex > 0; + } + @Override public boolean equals(Object o) { diff --git a/android/app/src/main/java/app/organicmaps/bookmarks/data/MapObject.java b/android/app/src/main/java/app/organicmaps/bookmarks/data/MapObject.java index b67f8e48c..0fed9d327 100644 --- a/android/app/src/main/java/app/organicmaps/bookmarks/data/MapObject.java +++ b/android/app/src/main/java/app/organicmaps/bookmarks/data/MapObject.java @@ -178,7 +178,7 @@ public class MapObject implements PlacePageData if (getClass() != other.getClass()) return false; - if (mFeatureId != FeatureId.EMPTY && other.getFeatureId() != FeatureId.EMPTY) + if (mFeatureId.isRealId() && other.getFeatureId().isRealId()) return mFeatureId.equals(other.getFeatureId()); return Double.doubleToLongBits(mLon) == Double.doubleToLongBits(other.mLon) &&