Fix imageburner unittests under asan

BUG=chromium:263045,chromium:261351
TEST=run unittests under asan; verified chrome://imageburner still works

Change-Id: I2117361965f43627143dc577aab7f73fe74a2390
Reviewed-on: https://gerrit.chromium.org/gerrit/64749
Reviewed-by: Yunlian Jiang <yunlian@chromium.org>
Commit-Queue: Toni Barzic <tbarzic@chromium.org>
Tested-by: Toni Barzic <tbarzic@chromium.org>
diff --git a/image_burner_impl.cc b/image_burner_impl.cc
index f8ffc12..ef3dbf6 100644
--- a/image_burner_impl.cc
+++ b/image_burner_impl.cc
@@ -117,7 +117,7 @@
   }
 
   if (success) {
-    scoped_ptr<char[]> buffer(new char[data_block_size_]);
+    scoped_array<char> buffer(new char[data_block_size_]);
 
     int64 total_burnt = 0;
     int64 image_size = reader_->GetSize();
diff --git a/image_burner_impl_unittest.cc b/image_burner_impl_unittest.cc
index 2fd5cf0..74dbced 100644
--- a/image_burner_impl_unittest.cc
+++ b/image_burner_impl_unittest.cc
@@ -17,16 +17,16 @@
 using ::testing::StrEq;
 
 const int kTestDataBlockSize = 8;
-char kDataBlockLength8[9] = "12345678";
-char kDataBlockLength3[4] = "abc";
-char kDataBlockLength1[2] = "@";
+const char kDataBlockLength8[] = {'1', '2', '3', '4', '5', '6', '7', 0};
+const char kDataBlockLength3[] = {'a', 'b', 0};
+const char kDataBlockLength1[] = {0};
 
 ACTION_P(SetArgPointee, value) {
   *arg0 = value;
 }
 
 ACTION_P(SetArgCharString, value) {
-  strcpy(arg0, value);
+  strncpy(arg0, value, arg1);
 }
 
 class ImageBurnerImplTest : public ::testing::Test {