diff --git a/src/bin/debug/profile/BasicProfileResult.cpp b/src/bin/debug/profile/BasicProfileResult.cpp index f6da6342c5..91da924d73 100644 --- a/src/bin/debug/profile/BasicProfileResult.cpp +++ b/src/bin/debug/profile/BasicProfileResult.cpp @@ -13,6 +13,7 @@ #include #include +#include #include "Options.h" #include "ProfiledEntity.h" @@ -144,8 +145,8 @@ void BasicProfileResult::PrintResults(ImageProfileResultContainer* container) { // get hit images - BasicImageProfileResult* images[container->CountImages()]; - int32 imageCount = GetHitImages(container, images); + BStackOrHeapArray images(container->CountImages()); + int32 imageCount = GetHitImages(container, &*images); // count symbols int32 symbolCount = 0; @@ -156,7 +157,7 @@ BasicProfileResult::PrintResults(ImageProfileResultContainer* container) } // find and sort the hit symbols - HitSymbol hitSymbols[symbolCount]; + BStackOrHeapArray hitSymbols(symbolCount); int32 hitSymbolCount = 0; for (int32 k = 0; k < imageCount; k++) { @@ -177,7 +178,7 @@ BasicProfileResult::PrintResults(ImageProfileResultContainer* container) } if (hitSymbolCount > 1) - std::sort(hitSymbols, hitSymbols + hitSymbolCount); + std::sort(&*hitSymbols, hitSymbols + hitSymbolCount); int64 totalTicks = fTotalTicks; const int64 missedTicks = fExpectedTicks - fTotalTicks; diff --git a/src/bin/debug/profile/CallgrindProfileResult.cpp b/src/bin/debug/profile/CallgrindProfileResult.cpp index e5bb809f22..ce5e0f0e55 100644 --- a/src/bin/debug/profile/CallgrindProfileResult.cpp +++ b/src/bin/debug/profile/CallgrindProfileResult.cpp @@ -11,6 +11,7 @@ #include #include +#include #include "Options.h" #include "ProfiledEntity.h" @@ -221,8 +222,8 @@ CallgrindProfileResult::PrintResults(ImageProfileResultContainer* container) fTotalTicks, fTotalTicks * fInterval); // get hit images - CallgrindImageProfileResult* images[container->CountImages()]; - int32 imageCount = GetHitImages(container, images); + BStackOrHeapArray images(container->CountImages()); + int32 imageCount = GetHitImages(container, &*images); for (int32 i = 0; i < imageCount; i++) { CallgrindImageProfileResult* image = images[i];