diff --git a/android/jni/com/mapswithme/maps/SearchEngine.cpp b/android/jni/com/mapswithme/maps/SearchEngine.cpp index 5f55e63b9e..8b4b3bc7c4 100644 --- a/android/jni/com/mapswithme/maps/SearchEngine.cpp +++ b/android/jni/com/mapswithme/maps/SearchEngine.cpp @@ -547,7 +547,7 @@ public: { jobject jroom = env->GetObjectArrayElement(jrooms, static_cast(i)); - booking::OrderingParams::Room room; + auto & room = orderingParams.m_rooms[i]; room.SetAdultsCount(static_cast(env->GetIntField(jroom, m_roomAdultsCountId))); auto const childrenObject = env->GetObjectField(jroom, m_roomAgeOfChildrenId); @@ -565,8 +565,6 @@ public: } room.SetAgeOfChildren(ageOfChildren); } - - orderingParams.m_rooms[i] = move(room); } return result; } diff --git a/iphone/Maps/UI/Search/Filters/MWMHotelParams.mm b/iphone/Maps/UI/Search/Filters/MWMHotelParams.mm index 5ad2dedb7f..16086aedf5 100644 --- a/iphone/Maps/UI/Search/Filters/MWMHotelParams.mm +++ b/iphone/Maps/UI/Search/Filters/MWMHotelParams.mm @@ -149,6 +149,7 @@ unsigned makeMask(std::unordered_set const &items) } std::vector filterRooms; + filterRooms.reserve(rooms.count); for (Room *room : rooms) { std::vector agesOfChildren(room.children, kAgeOfChild); agesOfChildren.insert(agesOfChildren.end(), room.infants, kAgeOfInfant); diff --git a/partners_api/booking_api.cpp b/partners_api/booking_api.cpp index 3a589cb8bf..ffa043fc77 100644 --- a/partners_api/booking_api.cpp +++ b/partners_api/booking_api.cpp @@ -379,10 +379,12 @@ string ApplyAvailabilityParamsDeep(string const & url, AvailabilityParams const { auto p = params.Get(kAvailabilityParamsForDeepLink); - auto & orderingParams = params.m_orderingParams; - auto const sum = std::accumulate( - orderingParams.m_rooms.cbegin(), orderingParams.m_rooms.cend(), 0 /* sum start value */, - [](auto const s, auto const & room) { return s + room.GetAdultsCount(); }); + auto & rooms = params.m_orderingParams.m_rooms; + uint32_t sum = 0; + for (auto const & room : rooms) + { + sum += room.GetAdultsCount(); + } p.emplace_back("numberOfGuests", std::to_string(sum)); diff --git a/partners_api/booking_availability_params.hpp b/partners_api/booking_availability_params.hpp index e73cbd4339..cdfa443e9f 100644 --- a/partners_api/booking_availability_params.hpp +++ b/partners_api/booking_availability_params.hpp @@ -34,7 +34,7 @@ struct AvailabilityParams : public ParamsBase /// specified guests and dates. Hotels m_hotelIds; - // Arrival/deparure dates and rooms. + // Check-in/check-out dates and rooms. // For detailed description see booking::OrderingParams declaration. OrderingParams m_orderingParams; /// Show only hotels with review_score >= that. min_review_score should be in the range 1 to 10.