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

Side by Side Diff: src/core/SkData.cpp

Issue 1316233002: Style Change: NULL->nullptr (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: 2015-08-27 (Thursday) 10:25:06 EDT Created 5 years, 3 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
« no previous file with comments | « src/core/SkConvolver.cpp ('k') | src/core/SkDataTable.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2011 Google Inc. 2 * Copyright 2011 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #include "SkData.h" 8 #include "SkData.h"
9 #include "SkLazyPtr.h" 9 #include "SkLazyPtr.h"
10 #include "SkOSFile.h" 10 #include "SkOSFile.h"
11 #include "SkReadBuffer.h" 11 #include "SkReadBuffer.h"
12 #include "SkStream.h" 12 #include "SkStream.h"
13 #include "SkWriteBuffer.h" 13 #include "SkWriteBuffer.h"
14 14
15 SkData::SkData(const void* ptr, size_t size, ReleaseProc proc, void* context) { 15 SkData::SkData(const void* ptr, size_t size, ReleaseProc proc, void* context) {
16 fPtr = const_cast<void*>(ptr); 16 fPtr = const_cast<void*>(ptr);
17 fSize = size; 17 fSize = size;
18 fReleaseProc = proc; 18 fReleaseProc = proc;
19 fReleaseProcContext = context; 19 fReleaseProcContext = context;
20 } 20 }
21 21
22 // This constructor means we are inline with our fPtr's contents. Thus we set fP tr 22 // This constructor means we are inline with our fPtr's contents. Thus we set fP tr
23 // to point right after this. We also set our releaseproc to sk_inplace_sentinel _releaseproc, 23 // to point right after this. We also set our releaseproc to sk_inplace_sentinel _releaseproc,
24 // since we need to handle "delete" ourselves. See internal_displose(). 24 // since we need to handle "delete" ourselves. See internal_displose().
25 // 25 //
26 SkData::SkData(size_t size) { 26 SkData::SkData(size_t size) {
27 fPtr = (char*)(this + 1); // contents are immediately after this 27 fPtr = (char*)(this + 1); // contents are immediately after this
28 fSize = size; 28 fSize = size;
29 fReleaseProc = NULL; 29 fReleaseProc = nullptr;
30 fReleaseProcContext = NULL; 30 fReleaseProcContext = nullptr;
31 } 31 }
32 32
33 SkData::~SkData() { 33 SkData::~SkData() {
34 if (fReleaseProc) { 34 if (fReleaseProc) {
35 fReleaseProc(fPtr, fReleaseProcContext); 35 fReleaseProc(fPtr, fReleaseProcContext);
36 } 36 }
37 } 37 }
38 38
39 bool SkData::equals(const SkData* other) const { 39 bool SkData::equals(const SkData* other) const {
40 if (NULL == other) { 40 if (nullptr == other) {
41 return false; 41 return false;
42 } 42 }
43 43
44 return fSize == other->fSize && !memcmp(fPtr, other->fPtr, fSize); 44 return fSize == other->fSize && !memcmp(fPtr, other->fPtr, fSize);
45 } 45 }
46 46
47 size_t SkData::copyRange(size_t offset, size_t length, void* buffer) const { 47 size_t SkData::copyRange(size_t offset, size_t length, void* buffer) const {
48 size_t available = fSize; 48 size_t available = fSize;
49 if (offset >= available || 0 == length) { 49 if (offset >= available || 0 == length) {
50 return 0; 50 return 0;
(...skipping 23 matching lines...) Expand all
74 SkData* data = new (storage) SkData(length); 74 SkData* data = new (storage) SkData(length);
75 if (srcOrNull) { 75 if (srcOrNull) {
76 memcpy(data->writable_data(), srcOrNull, length); 76 memcpy(data->writable_data(), srcOrNull, length);
77 } 77 }
78 return data; 78 return data;
79 } 79 }
80 80
81 /////////////////////////////////////////////////////////////////////////////// 81 ///////////////////////////////////////////////////////////////////////////////
82 82
83 // As a template argument these must have external linkage. 83 // As a template argument these must have external linkage.
84 SkData* sk_new_empty_data() { return new SkData(NULL, 0, NULL, NULL); } 84 SkData* sk_new_empty_data() { return new SkData(nullptr, 0, nullptr, nullptr); }
85 namespace { void sk_unref_data(SkData* ptr) { return SkSafeUnref(ptr); } } 85 namespace { void sk_unref_data(SkData* ptr) { return SkSafeUnref(ptr); } }
86 86
87 SK_DECLARE_STATIC_LAZY_PTR(SkData, empty, sk_new_empty_data, sk_unref_data); 87 SK_DECLARE_STATIC_LAZY_PTR(SkData, empty, sk_new_empty_data, sk_unref_data);
88 88
89 SkData* SkData::NewEmpty() { 89 SkData* SkData::NewEmpty() {
90 return SkRef(empty.get()); 90 return SkRef(empty.get());
91 } 91 }
92 92
93 // assumes fPtr was allocated via sk_malloc 93 // assumes fPtr was allocated via sk_malloc
94 static void sk_free_releaseproc(const void* ptr, void*) { 94 static void sk_free_releaseproc(const void* ptr, void*) {
95 sk_free((void*)ptr); 95 sk_free((void*)ptr);
96 } 96 }
97 97
98 SkData* SkData::NewFromMalloc(const void* data, size_t length) { 98 SkData* SkData::NewFromMalloc(const void* data, size_t length) {
99 return new SkData(data, length, sk_free_releaseproc, NULL); 99 return new SkData(data, length, sk_free_releaseproc, nullptr);
100 } 100 }
101 101
102 SkData* SkData::NewWithCopy(const void* src, size_t length) { 102 SkData* SkData::NewWithCopy(const void* src, size_t length) {
103 SkASSERT(src); 103 SkASSERT(src);
104 return PrivateNewWithCopy(src, length); 104 return PrivateNewWithCopy(src, length);
105 } 105 }
106 106
107 SkData* SkData::NewUninitialized(size_t length) { 107 SkData* SkData::NewUninitialized(size_t length) {
108 return PrivateNewWithCopy(NULL, length); 108 return PrivateNewWithCopy(nullptr, length);
109 } 109 }
110 110
111 SkData* SkData::NewWithProc(const void* ptr, size_t length, ReleaseProc proc, vo id* context) { 111 SkData* SkData::NewWithProc(const void* ptr, size_t length, ReleaseProc proc, vo id* context) {
112 return new SkData(ptr, length, proc, context); 112 return new SkData(ptr, length, proc, context);
113 } 113 }
114 114
115 // assumes fPtr was allocated with sk_fmmap 115 // assumes fPtr was allocated with sk_fmmap
116 static void sk_mmap_releaseproc(const void* addr, void* ctx) { 116 static void sk_mmap_releaseproc(const void* addr, void* ctx) {
117 size_t length = reinterpret_cast<size_t>(ctx); 117 size_t length = reinterpret_cast<size_t>(ctx);
118 sk_fmunmap(addr, length); 118 sk_fmunmap(addr, length);
119 } 119 }
120 120
121 SkData* SkData::NewFromFILE(SkFILE* f) { 121 SkData* SkData::NewFromFILE(SkFILE* f) {
122 size_t size; 122 size_t size;
123 void* addr = sk_fmmap(f, &size); 123 void* addr = sk_fmmap(f, &size);
124 if (NULL == addr) { 124 if (nullptr == addr) {
125 return NULL; 125 return nullptr;
126 } 126 }
127 127
128 return SkData::NewWithProc(addr, size, sk_mmap_releaseproc, reinterpret_cast <void*>(size)); 128 return SkData::NewWithProc(addr, size, sk_mmap_releaseproc, reinterpret_cast <void*>(size));
129 } 129 }
130 130
131 SkData* SkData::NewFromFileName(const char path[]) { 131 SkData* SkData::NewFromFileName(const char path[]) {
132 SkFILE* f = path ? sk_fopen(path, kRead_SkFILE_Flag) : NULL; 132 SkFILE* f = path ? sk_fopen(path, kRead_SkFILE_Flag) : nullptr;
133 if (NULL == f) { 133 if (nullptr == f) {
134 return NULL; 134 return nullptr;
135 } 135 }
136 SkData* data = NewFromFILE(f); 136 SkData* data = NewFromFILE(f);
137 sk_fclose(f); 137 sk_fclose(f);
138 return data; 138 return data;
139 } 139 }
140 140
141 SkData* SkData::NewFromFD(int fd) { 141 SkData* SkData::NewFromFD(int fd) {
142 size_t size; 142 size_t size;
143 void* addr = sk_fdmmap(fd, &size); 143 void* addr = sk_fdmmap(fd, &size);
144 if (NULL == addr) { 144 if (nullptr == addr) {
145 return NULL; 145 return nullptr;
146 } 146 }
147 147
148 return SkData::NewWithProc(addr, size, sk_mmap_releaseproc, NULL); 148 return SkData::NewWithProc(addr, size, sk_mmap_releaseproc, nullptr);
149 } 149 }
150 150
151 // assumes context is a SkData 151 // assumes context is a SkData
152 static void sk_dataref_releaseproc(const void*, void* context) { 152 static void sk_dataref_releaseproc(const void*, void* context) {
153 SkData* src = reinterpret_cast<SkData*>(context); 153 SkData* src = reinterpret_cast<SkData*>(context);
154 src->unref(); 154 src->unref();
155 } 155 }
156 156
157 SkData* SkData::NewSubset(const SkData* src, size_t offset, size_t length) { 157 SkData* SkData::NewSubset(const SkData* src, size_t offset, size_t length) {
158 /* 158 /*
(...skipping 12 matching lines...) Expand all
171 } 171 }
172 SkASSERT(length > 0); 172 SkASSERT(length > 0);
173 173
174 src->ref(); // this will be balanced in sk_dataref_releaseproc 174 src->ref(); // this will be balanced in sk_dataref_releaseproc
175 return new SkData(src->bytes() + offset, length, sk_dataref_releaseproc, 175 return new SkData(src->bytes() + offset, length, sk_dataref_releaseproc,
176 const_cast<SkData*>(src)); 176 const_cast<SkData*>(src));
177 } 177 }
178 178
179 SkData* SkData::NewWithCString(const char cstr[]) { 179 SkData* SkData::NewWithCString(const char cstr[]) {
180 size_t size; 180 size_t size;
181 if (NULL == cstr) { 181 if (nullptr == cstr) {
182 cstr = ""; 182 cstr = "";
183 size = 1; 183 size = 1;
184 } else { 184 } else {
185 size = strlen(cstr) + 1; 185 size = strlen(cstr) + 1;
186 } 186 }
187 return NewWithCopy(cstr, size); 187 return NewWithCopy(cstr, size);
188 } 188 }
189 189
190 /////////////////////////////////////////////////////////////////////////////// 190 ///////////////////////////////////////////////////////////////////////////////
191 191
192 SkData* SkData::NewFromStream(SkStream* stream, size_t size) { 192 SkData* SkData::NewFromStream(SkStream* stream, size_t size) {
193 SkAutoDataUnref data(SkData::NewUninitialized(size)); 193 SkAutoDataUnref data(SkData::NewUninitialized(size));
194 if (stream->read(data->writable_data(), size) != size) { 194 if (stream->read(data->writable_data(), size) != size) {
195 return NULL; 195 return nullptr;
196 } 196 }
197 return data.detach(); 197 return data.detach();
198 } 198 }
199 199
OLDNEW
« no previous file with comments | « src/core/SkConvolver.cpp ('k') | src/core/SkDataTable.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698