Address OutputStream feedback
Change-Id: I45d37600dbf0f5bcb1c646de4eed1d2e470a8bce
diff --git a/src/file_output_stream.cc b/src/file_output_stream.cc
index 8b967af..0e4a294 100644
--- a/src/file_output_stream.cc
+++ b/src/file_output_stream.cc
@@ -23,14 +23,14 @@
namespace art {
-FileOutputStream::FileOutputStream(File* file) : OutputStream(file->GetPath()), file_(file) {};
+FileOutputStream::FileOutputStream(File* file) : OutputStream(file->GetPath()), file_(file) {}
bool FileOutputStream::WriteFully(const void* buffer, int64_t byte_count) {
return file_->WriteFully(buffer, byte_count);
}
-off_t FileOutputStream::lseek(off_t offset, int whence) {
- return ::lseek(file_->Fd(), offset, whence);
+off_t FileOutputStream::Seek(off_t offset, Whence whence) {
+ return lseek(file_->Fd(), offset, static_cast<int>(whence));
}
} // namespace art
diff --git a/src/file_output_stream.h b/src/file_output_stream.h
index 4106744..b5eb4f8 100644
--- a/src/file_output_stream.h
+++ b/src/file_output_stream.h
@@ -24,15 +24,14 @@
namespace art {
class FileOutputStream : public OutputStream {
-
public:
FileOutputStream(File* file);
- virtual ~FileOutputStream() {};
+ virtual ~FileOutputStream() {}
virtual bool WriteFully(const void* buffer, int64_t byte_count);
- virtual off_t lseek(off_t offset, int whence);
+ virtual off_t Seek(off_t offset, Whence whence);
private:
File* file_;
diff --git a/src/oat_writer.cc b/src/oat_writer.cc
index c5b698c..113beba 100644
--- a/src/oat_writer.cc
+++ b/src/oat_writer.cc
@@ -422,7 +422,7 @@
}
#define DCHECK_CODE_OFFSET() \
- DCHECK_EQ(static_cast<off_t>(code_offset), out.lseek(0, SEEK_CUR))
+ DCHECK_EQ(static_cast<off_t>(code_offset), out.Seek(0, kSeekCurrent))
bool OatWriter::Write(OutputStream& out) {
if (!out.WriteFully(oat_header_, sizeof(*oat_header_))) {
@@ -464,7 +464,7 @@
}
for (size_t i = 0; i != oat_dex_files_.size(); ++i) {
uint32_t expected_offset = oat_dex_files_[i]->dex_file_offset_;
- off_t actual_offset = out.lseek(expected_offset, SEEK_SET);
+ off_t actual_offset = out.Seek(expected_offset, kSeekSet);
if (static_cast<uint32_t>(actual_offset) != expected_offset) {
const DexFile* dex_file = (*dex_files_)[i];
PLOG(ERROR) << "Failed to seek to dex file section. Actual: " << actual_offset
@@ -488,7 +488,7 @@
size_t OatWriter::WriteCode(OutputStream& out) {
uint32_t code_offset = oat_header_->GetExecutableOffset();
- off_t new_offset = out.lseek(executable_offset_padding_length_, SEEK_CUR);
+ off_t new_offset = out.Seek(executable_offset_padding_length_, kSeekCurrent);
if (static_cast<uint32_t>(new_offset) != code_offset) {
PLOG(ERROR) << "Failed to seek to oat code section. Actual: " << new_offset
<< " Expected: " << code_offset << " File: " << out.GetLocation();
@@ -585,7 +585,7 @@
uint32_t aligned_code_offset = compiled_method->AlignCode(code_offset);
uint32_t aligned_code_delta = aligned_code_offset - code_offset;
if (aligned_code_delta != 0) {
- off_t new_offset = out.lseek(aligned_code_delta, SEEK_CUR);
+ off_t new_offset = out.Seek(aligned_code_delta, kSeekCurrent);
if (static_cast<uint32_t>(new_offset) != aligned_code_offset) {
PLOG(ERROR) << "Failed to seek to align oat code. Actual: " << new_offset
<< " Expected: " << aligned_code_offset << " File: " << out.GetLocation();
@@ -696,7 +696,7 @@
compiler_->GetInstructionSet());
uint32_t aligned_code_delta = aligned_code_offset - code_offset;
if (aligned_code_delta != 0) {
- off_t new_offset = out.lseek(aligned_code_delta, SEEK_CUR);
+ off_t new_offset = out.Seek(aligned_code_delta, kSeekCurrent);
if (static_cast<uint32_t>(new_offset) != aligned_code_offset) {
PLOG(ERROR) << "Failed to seek to align invoke stub code. Actual: " << new_offset
<< " Expected: " << aligned_code_offset;
@@ -742,7 +742,7 @@
uint32_t aligned_code_delta = aligned_code_offset - code_offset;
CHECK(aligned_code_delta < 48u);
if (aligned_code_delta != 0) {
- off_t new_offset = out.lseek(aligned_code_delta, SEEK_CUR);
+ off_t new_offset = out.Seek(aligned_code_delta, kSeekCurrent);
if (static_cast<uint32_t>(new_offset) != aligned_code_offset) {
PLOG(ERROR) << "Failed to seek to align proxy stub code. Actual: " << new_offset
<< " Expected: " << aligned_code_offset;
diff --git a/src/output_stream.h b/src/output_stream.h
index c35fe25..b03092d 100644
--- a/src/output_stream.h
+++ b/src/output_stream.h
@@ -25,11 +25,17 @@
namespace art {
+enum Whence {
+ kSeekSet = SEEK_SET,
+ kSeekCurrent = SEEK_CUR,
+ kSeekEnd = SEEK_END,
+};
+
class OutputStream {
public:
- OutputStream(const std::string& location) : location_(location) {};
+ OutputStream(const std::string& location) : location_(location) {}
- virtual ~OutputStream() {};
+ virtual ~OutputStream() {}
const std::string& GetLocation() const {
return location_;
@@ -37,7 +43,7 @@
virtual bool WriteFully(const void* buffer, int64_t byte_count) = 0;
- virtual off_t lseek(off_t offset, int whence) = 0;
+ virtual off_t Seek(off_t offset, Whence whence) = 0;
private:
const std::string location_;
diff --git a/src/output_stream_test.cc b/src/output_stream_test.cc
index 8415d9f..0e02825 100644
--- a/src/output_stream_test.cc
+++ b/src/output_stream_test.cc
@@ -24,7 +24,7 @@
class OutputStreamTest : public CommonTest {
protected:
void CheckOffset(off_t expected) {
- off_t actual = output_stream_->lseek(0, SEEK_CUR);
+ off_t actual = output_stream_->Seek(0, kSeekCurrent);
CHECK_EQ(expected, actual);
}
@@ -33,14 +33,14 @@
}
void GenerateTestOutput() {
- CHECK_EQ(3, output_stream_->lseek(3, SEEK_CUR));
+ CHECK_EQ(3, output_stream_->Seek(3, kSeekCurrent));
CheckOffset(3);
- CHECK_EQ(2, output_stream_->lseek(2, SEEK_SET));
+ CHECK_EQ(2, output_stream_->Seek(2, kSeekSet));
CheckOffset(2);
uint8_t buf[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
CHECK(output_stream_->WriteFully(buf, 2));
CheckOffset(4);
- CHECK_EQ(6, output_stream_->lseek(2, SEEK_END));
+ CHECK_EQ(6, output_stream_->Seek(2, kSeekEnd));
CheckOffset(6);
CHECK(output_stream_->WriteFully(buf, 4));
CheckOffset(10);
diff --git a/src/vector_output_stream.cc b/src/vector_output_stream.cc
index 73bc209..96154ee 100644
--- a/src/vector_output_stream.cc
+++ b/src/vector_output_stream.cc
@@ -23,7 +23,7 @@
namespace art {
VectorOutputStream::VectorOutputStream(const std::string& location, std::vector<uint8_t>& vector)
- : OutputStream(location), offset_(vector.size()), vector_(vector) {};
+ : OutputStream(location), offset_(vector.size()), vector_(vector) {}
bool VectorOutputStream::WriteFully(const void* buffer, int64_t byte_count) {
off_t new_offset = offset_ + byte_count;
@@ -33,26 +33,22 @@
return true;
}
-off_t VectorOutputStream::lseek(off_t offset, int whence) {
- CHECK(whence == SEEK_SET || whence == SEEK_CUR || whence == SEEK_END) << whence;
- off_t new_offset;
+off_t VectorOutputStream::Seek(off_t offset, Whence whence) {
+ CHECK(whence == kSeekSet || whence == kSeekCurrent || whence == kSeekEnd) << whence;
+ off_t new_offset = 0;
switch (whence) {
- case SEEK_SET: {
+ case kSeekSet: {
new_offset = offset;
break;
}
- case SEEK_CUR: {
+ case kSeekCurrent: {
new_offset = offset_ + offset;
break;
}
- case SEEK_END: {
+ case kSeekEnd: {
new_offset = vector_.size() + offset;
break;
}
- default: {
- LOG(FATAL) << whence;
- new_offset = -1;
- }
}
EnsureCapacity(new_offset);
offset_ = new_offset;
diff --git a/src/vector_output_stream.h b/src/vector_output_stream.h
index a11c82b..a99128e 100644
--- a/src/vector_output_stream.h
+++ b/src/vector_output_stream.h
@@ -25,15 +25,14 @@
namespace art {
class VectorOutputStream : public OutputStream {
-
public:
VectorOutputStream(const std::string& location, std::vector<uint8_t>& vector);
- virtual ~VectorOutputStream() {};
+ virtual ~VectorOutputStream() {}
virtual bool WriteFully(const void* buffer, int64_t byte_count);
- virtual off_t lseek(off_t offset, int whence);
+ virtual off_t Seek(off_t offset, Whence whence);
private:
void EnsureCapacity(off_t new_offset);