Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(214)

Side by Side Diff: content/browser/download/base_file.cc

Issue 9349005: net: Rename FileStream::Open/Close with OpenSync/CloseSync. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebased Created 8 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/common/zip_reader.cc ('k') | content/browser/download/base_file_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/browser/download/base_file.h" 5 #include "content/browser/download/base_file.h"
6 6
7 #include "base/file_util.h" 7 #include "base/file_util.h"
8 #include "base/format_macros.h" 8 #include "base/format_macros.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/pickle.h" 10 #include "base/pickle.h"
(...skipping 484 matching lines...) Expand 10 before | Expand all | Expand 10 after
495 bound_net_log_.BeginEvent( 495 bound_net_log_.BeginEvent(
496 net::NetLog::TYPE_DOWNLOAD_FILE_OPENED, 496 net::NetLog::TYPE_DOWNLOAD_FILE_OPENED,
497 make_scoped_refptr( 497 make_scoped_refptr(
498 new download_net_logs::FileOpenedParameters( 498 new download_net_logs::FileOpenedParameters(
499 full_path_.AsUTF8Unsafe(), bytes_so_far_))); 499 full_path_.AsUTF8Unsafe(), bytes_so_far_)));
500 500
501 // Create a new file stream if it is not provided. 501 // Create a new file stream if it is not provided.
502 if (!file_stream_.get()) { 502 if (!file_stream_.get()) {
503 CreateFileStream(); 503 CreateFileStream();
504 file_stream_->EnableErrorStatistics(); 504 file_stream_->EnableErrorStatistics();
505 int open_result = file_stream_->Open( 505 int open_result = file_stream_->OpenSync(
506 full_path_, 506 full_path_,
507 base::PLATFORM_FILE_OPEN_ALWAYS | base::PLATFORM_FILE_WRITE); 507 base::PLATFORM_FILE_OPEN_ALWAYS | base::PLATFORM_FILE_WRITE);
508 if (open_result != net::OK) 508 if (open_result != net::OK)
509 return ClearStream(LOG_ERROR("Open", open_result)); 509 return ClearStream(LOG_ERROR("Open", open_result));
510 510
511 // We may be re-opening the file after rename. Always make sure we're 511 // We may be re-opening the file after rename. Always make sure we're
512 // writing at the end of the file. 512 // writing at the end of the file.
513 int64 seek_result = file_stream_->Seek(net::FROM_END, 0); 513 int64 seek_result = file_stream_->Seek(net::FROM_END, 0);
514 if (seek_result < 0) 514 if (seek_result < 0)
515 return ClearStream(LOG_ERROR("Seek", seek_result)); 515 return ClearStream(LOG_ERROR("Seek", seek_result));
(...skipping 12 matching lines...) Expand all
528 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); 528 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE));
529 529
530 bound_net_log_.AddEvent(net::NetLog::TYPE_DOWNLOAD_FILE_CLOSED, NULL); 530 bound_net_log_.AddEvent(net::NetLog::TYPE_DOWNLOAD_FILE_CLOSED, NULL);
531 531
532 if (file_stream_.get()) { 532 if (file_stream_.get()) {
533 #if defined(OS_CHROMEOS) 533 #if defined(OS_CHROMEOS)
534 // Currently we don't really care about the return value, since if it fails 534 // Currently we don't really care about the return value, since if it fails
535 // theres not much we can do. But we might in the future. 535 // theres not much we can do. But we might in the future.
536 file_stream_->Flush(); 536 file_stream_->Flush();
537 #endif 537 #endif
538 file_stream_->Close(); 538 file_stream_->CloseSync();
539 ClearStream(net::OK); 539 ClearStream(net::OK);
540 } 540 }
541 } 541 }
542 542
543 net::Error BaseFile::ClearStream(net::Error net_error) { 543 net::Error BaseFile::ClearStream(net::Error net_error) {
544 // This should only be called when we have a stream. 544 // This should only be called when we have a stream.
545 DCHECK(file_stream_.get() != NULL); 545 DCHECK(file_stream_.get() != NULL);
546 file_stream_.reset(); 546 file_stream_.reset();
547 bound_net_log_.EndEvent(net::NetLog::TYPE_DOWNLOAD_FILE_OPENED, NULL); 547 bound_net_log_.EndEvent(net::NetLog::TYPE_DOWNLOAD_FILE_OPENED, NULL);
548 return net_error; 548 return net_error;
(...skipping 13 matching lines...) Expand all
562 int64 BaseFile::CurrentSpeedAtTime(base::TimeTicks current_time) const { 562 int64 BaseFile::CurrentSpeedAtTime(base::TimeTicks current_time) const {
563 base::TimeDelta diff = current_time - start_tick_; 563 base::TimeDelta diff = current_time - start_tick_;
564 int64 diff_ms = diff.InMilliseconds(); 564 int64 diff_ms = diff.InMilliseconds();
565 return diff_ms == 0 ? 0 : bytes_so_far() * 1000 / diff_ms; 565 return diff_ms == 0 ? 0 : bytes_so_far() * 1000 / diff_ms;
566 } 566 }
567 567
568 int64 BaseFile::CurrentSpeed() const { 568 int64 BaseFile::CurrentSpeed() const {
569 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE)); 569 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE));
570 return CurrentSpeedAtTime(base::TimeTicks::Now()); 570 return CurrentSpeedAtTime(base::TimeTicks::Now());
571 } 571 }
OLDNEW
« no previous file with comments | « chrome/common/zip_reader.cc ('k') | content/browser/download/base_file_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698