Fix move assignment.

This commit is contained in:
Victor Zverovich 2014-05-03 15:46:11 -07:00
parent 823ce5fc3d
commit 1a6d365db5
2 changed files with 3 additions and 2 deletions

View File

@ -204,7 +204,7 @@ TEST(FileTest, MoveAssignmentClosesFile) {
File f2("CMakeLists.txt", File::RDONLY);
int old_fd = f2.descriptor();
f2 = std::move(f);
EXPECT_TRUE(IsClosedInternal(old_fd));
EXPECT_CLOSED(old_fd);
}
File OpenFile(int &fd) {

View File

@ -177,7 +177,8 @@ class File {
other.fd_ = -1;
}
File& operator=(File &&other) FMT_NOEXCEPT(true) {
File& operator=(File &&other) {
close();
fd_ = other.fd_;
other.fd_ = -1;
return *this;