From 1a9267be583748373b08b7e44ebff2cb87fc21cf Mon Sep 17 00:00:00 2001 From: "commit-queue@webkit.org" Date: Tue, 26 Jun 2012 12:10:58 +0000 Subject: [PATCH] [EFL] Simplify SharedBuffer::createWithContentsOfFile() implementation https://bugs.webkit.org/show_bug.cgi?id=89655 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Patch by Christophe Dumez on 2012-06-26 Reviewed by Csaba Osztrogonác. Simplify the implementation of SharedBuffer::createWithContentsOfFile() in EFL port. No new test, no behavior change. * platform/efl/SharedBufferEfl.cpp: (WebCore::SharedBuffer::createWithContentsOfFile): git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121254 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- Source/WebCore/ChangeLog | 15 +++++++++++++++ Source/WebCore/platform/efl/SharedBufferEfl.cpp | 20 ++++++-------------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog index 83690c6..a0b18b9 100755 --- a/Source/WebCore/ChangeLog +++ b/Source/WebCore/ChangeLog @@ -1,3 +1,18 @@ +2012-06-26 Christophe Dumez + + [EFL] Simplify SharedBuffer::createWithContentsOfFile() implementation + https://bugs.webkit.org/show_bug.cgi?id=89655 + + Reviewed by Csaba Osztrogonác. + + Simplify the implementation of SharedBuffer::createWithContentsOfFile() + in EFL port. + + No new test, no behavior change. + + * platform/efl/SharedBufferEfl.cpp: + (WebCore::SharedBuffer::createWithContentsOfFile): + 2012-06-26 Thiago Marcos P. Santos [EFL] REGRESSION (r121163): fast/frames/iframe-access-screen-of-deleted.html crashes diff --git a/Source/WebCore/platform/efl/SharedBufferEfl.cpp b/Source/WebCore/platform/efl/SharedBufferEfl.cpp index 9e7646d..8db44a6 100644 --- a/Source/WebCore/platform/efl/SharedBufferEfl.cpp +++ b/Source/WebCore/platform/efl/SharedBufferEfl.cpp @@ -39,32 +39,24 @@ namespace WebCore { PassRefPtr SharedBuffer::createWithContentsOfFile(const String& filePath) { - FILE* file; - struct stat fileStat; - RefPtr result; - if (filePath.isEmpty()) return 0; - if (!(file = fopen(filePath.utf8().data(), "rb"))) + FILE* file = fopen(filePath.utf8().data(), "rb"); + if (!file) return 0; + struct stat fileStat; if (fstat(fileno(file), &fileStat)) { fclose(file); return 0; } - result = SharedBuffer::create(); - result->m_buffer.resize(fileStat.st_size); - if (result->m_buffer.size() != static_cast(fileStat.st_size)) { - fclose(file); - return 0; - } - - const size_t bytesRead = fread(result->m_buffer.data(), 1, fileStat.st_size, file); + Vector buffer(fileStat.st_size); + const size_t bytesRead = fread(buffer.data(), 1, buffer.size(), file); fclose(file); - return bytesRead == static_cast(fileStat.st_size) ? result.release() : 0; + return (bytesRead == buffer.size()) ? SharedBuffer::adoptVector(buffer) : 0; } } // namespace WebCore -- 2.7.4