Commit 9f78506b authored by Max Morin's avatar Max Morin Committed by Commit Bot

Remove downcast in WinAudioInputTest.

The downcast is invalid after
https://chromium-review.googlesource.com/c/chromium/src/+/700079
has been relanded.

Drive-by: fix an instance of an int16_t[] being stored in a
unique_ptr<int16_t>.

Bug: 768610
Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel
Change-Id: If74ac21ba59370eeae719d16f337d14e40a91ccc
Reviewed-on: https://chromium-review.googlesource.com/702260Reviewed-by: default avatarTommi <tommi@chromium.org>
Commit-Queue: Max Morin <maxmorin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#506702}
parent 8170e999
...@@ -132,8 +132,8 @@ class WriteToFileAudioSink : public AudioInputStream::AudioInputCallback { ...@@ -132,8 +132,8 @@ class WriteToFileAudioSink : public AudioInputStream::AudioInputCallback {
double volume) override { double volume) override {
EXPECT_EQ(bits_per_sample_, 16); EXPECT_EQ(bits_per_sample_, 16);
const int num_samples = src->frames() * src->channels(); const int num_samples = src->frames() * src->channels();
std::unique_ptr<int16_t> interleaved(new int16_t[num_samples]); auto interleaved = std::make_unique<int16_t[]>(num_samples);
const int bytes_per_sample = sizeof(*interleaved); const int bytes_per_sample = sizeof(interleaved[0]);
src->ToInterleaved(src->frames(), bytes_per_sample, interleaved.get()); src->ToInterleaved(src->frames(), bytes_per_sample, interleaved.get());
// Store data data in a temporary buffer to avoid making blocking // Store data data in a temporary buffer to avoid making blocking
...@@ -237,7 +237,7 @@ class ScopedAudioInputStream { ...@@ -237,7 +237,7 @@ class ScopedAudioInputStream {
void Close() { void Close() {
if (stream_) if (stream_)
stream_->Close(); stream_->Close();
stream_ = NULL; stream_ = nullptr;
} }
AudioInputStream* operator->() { return stream_; } AudioInputStream* operator->() { return stream_; }
...@@ -334,26 +334,24 @@ TEST_F(WinAudioInputTest, WASAPIAudioInputStreamMiscCallingSequences) { ...@@ -334,26 +334,24 @@ TEST_F(WinAudioInputTest, WASAPIAudioInputStreamMiscCallingSequences) {
ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get())); ABORT_AUDIO_TEST_IF_NOT(HasCoreAudioAndInputDevices(audio_manager_.get()));
ScopedAudioInputStream ais( ScopedAudioInputStream ais(
CreateDefaultAudioInputStream(audio_manager_.get())); CreateDefaultAudioInputStream(audio_manager_.get()));
WASAPIAudioInputStream* wais =
static_cast<WASAPIAudioInputStream*>(ais.get());
// Open(), Open() should fail the second time. // Open(), Open() should fail the second time.
EXPECT_TRUE(ais->Open()); EXPECT_TRUE(ais->Open());
EXPECT_FALSE(ais->Open()); EXPECT_FALSE(ais->Open());
MockAudioInputCallback sink; FakeAudioInputCallback sink;
// Start(), Start() is a valid calling sequence (second call does nothing). // Start(), Start() is a valid calling sequence (second call does nothing).
ais->Start(&sink); ais->Start(&sink);
EXPECT_TRUE(wais->started()); sink.WaitForData();
ais->Start(&sink); ais->Start(&sink);
EXPECT_TRUE(wais->started()); // Ensure the stream is still started.
sink.WaitForData();
sink.WaitForData();
// Stop(), Stop() is a valid calling sequence (second call does nothing). // Stop(), Stop() is a valid calling sequence (second call does nothing).
ais->Stop(); ais->Stop();
EXPECT_FALSE(wais->started());
ais->Stop(); ais->Stop();
EXPECT_FALSE(wais->started());
ais.Close(); ais.Close();
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment