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

Unified Diff: cc/resources/resource_provider.cc

Issue 690713002: cc: check valid thread and resource origin for the resource rasterized. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove redundant DCHECK_IS_ON Created 6 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/resources/resource_provider.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/resources/resource_provider.cc
diff --git a/cc/resources/resource_provider.cc b/cc/resources/resource_provider.cc
index 3a59c0b97cf7b2f12d66aa3f891d4321b39d587d..58023831f2e45bcc848e58f64ab7bc3a7c5dc158 100644
--- a/cc/resources/resource_provider.cc
+++ b/cc/resources/resource_provider.cc
@@ -728,7 +728,7 @@ void ResourceProvider::DeleteResourceInternal(ResourceMap::iterator it,
resource->pixels = NULL;
}
if (resource->gpu_memory_buffer) {
- DCHECK(resource->origin != Resource::External);
+ DCHECK(resource->origin == Resource::Internal);
delete resource->gpu_memory_buffer;
resource->gpu_memory_buffer = NULL;
}
@@ -1030,6 +1030,7 @@ ResourceProvider::ScopedWriteLockSoftware::ScopedWriteLockSoftware(
}
ResourceProvider::ScopedWriteLockSoftware::~ScopedWriteLockSoftware() {
+ DCHECK(thread_checker_.CalledOnValidThread());
resource_provider_->UnlockForWrite(resource_);
}
@@ -1048,6 +1049,7 @@ ResourceProvider::ScopedWriteLockGpuMemoryBuffer::
ResourceProvider::ScopedWriteLockGpuMemoryBuffer::
~ScopedWriteLockGpuMemoryBuffer() {
+ DCHECK(thread_checker_.CalledOnValidThread());
resource_provider_->UnlockForWrite(resource_);
if (!gpu_memory_buffer_)
return;
@@ -1093,11 +1095,13 @@ ResourceProvider::ScopedWriteLockGr::ScopedWriteLockGr(
}
ResourceProvider::ScopedWriteLockGr::~ScopedWriteLockGr() {
+ DCHECK(thread_checker_.CalledOnValidThread());
resource_provider_->UnlockForWrite(resource_);
}
SkSurface* ResourceProvider::ScopedWriteLockGr::GetSkSurface(
bool use_distance_field_text) {
+ DCHECK(thread_checker_.CalledOnValidThread());
DCHECK(resource_->locked_for_write);
// If the surface doesn't exist, or doesn't have the correct dff setting,
« no previous file with comments | « cc/resources/resource_provider.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698