Skip to content

Commit ba458e5

Browse files
authored
Fix a few warnings (acts-project#947)
Fix some nullpointer dereferencing warnings in the bin association and toy detector builder
1 parent ca800b0 commit ba458e5

File tree

2 files changed

+9
-5
lines changed

2 files changed

+9
-5
lines changed

core/include/detray/builders/detail/bin_association.hpp

+6-5
Original file line numberDiff line numberDiff line change
@@ -175,15 +175,15 @@ static inline void bin_association(const context_t & /*context*/,
175175

176176
if (!vertices.empty()) {
177177
// Create a surface contour
178-
std::vector<point2_t> surface_contour;
178+
std::vector<point2_t> surface_contour{};
179179
surface_contour.reserve(vertices.size());
180180
scalar_t phi_min =
181181
std::numeric_limits<scalar_t>::max();
182182
scalar_t phi_max =
183183
-std::numeric_limits<scalar_t>::max();
184184
// We poentially need the split vertices
185-
std::vector<point2_t> s_c_neg;
186-
std::vector<point2_t> s_c_pos;
185+
std::vector<point2_t> s_c_neg{};
186+
std::vector<point2_t> s_c_pos{};
187187
scalar_t z_min_neg =
188188
std::numeric_limits<scalar_t>::max();
189189
scalar_t z_max_neg =
@@ -223,9 +223,10 @@ static inline void bin_association(const context_t & /*context*/,
223223
{z_max_pos, constant<scalar_t>::pi});
224224
s_c_pos.push_back(
225225
{z_min_pos, constant<scalar_t>::pi});
226-
surface_contours = {s_c_neg, s_c_pos};
226+
surface_contours.insert(surface_contours.end(),
227+
{s_c_neg, s_c_pos});
227228
} else {
228-
surface_contours = {surface_contour};
229+
surface_contours.push_back(surface_contour);
229230
}
230231

231232
// Check the association (with potential splits)

tests/include/detray/test/utils/detectors/build_toy_detector.hpp

+3
Original file line numberDiff line numberDiff line change
@@ -599,6 +599,9 @@ inline void get_volume_extent(
599599
auto decorator =
600600
std::dynamic_pointer_cast<const factory_decorator<detector_t>>(
601601
sf_factory);
602+
if (!decorator) {
603+
throw std::bad_cast();
604+
}
602605
cyl_factory =
603606
dynamic_cast<const cylinder_portal_generator<detector_t> *>(
604607
decorator->get_factory());

0 commit comments

Comments
 (0)