#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "third_party/blink/renderer/platform/image-decoders/ico/ico_image_decoder.h"
#include <algorithm>
#include "third_party/blink/renderer/platform/image-decoders/png/png_image_decoder.h"
namespace blink {
static const wtf_size_t kSizeOfDirectory = …;
static const wtf_size_t kSizeOfDirEntry = …;
ICOImageDecoder::ICOImageDecoder(AlphaOption alpha_option,
ColorBehavior color_behavior,
wtf_size_t max_decoded_bytes)
: … { … }
ICOImageDecoder::~ICOImageDecoder() = default;
String ICOImageDecoder::FilenameExtension() const { … }
const AtomicString& ICOImageDecoder::MimeType() const { … }
void ICOImageDecoder::OnSetData(scoped_refptr<SegmentReader> data) { … }
gfx::Size ICOImageDecoder::Size() const { … }
gfx::Size ICOImageDecoder::FrameSizeAtIndex(wtf_size_t index) const { … }
bool ICOImageDecoder::SetSize(unsigned width, unsigned height) { … }
bool ICOImageDecoder::FrameIsReceivedAtIndex(wtf_size_t index) const { … }
bool ICOImageDecoder::SetFailed() { … }
bool ICOImageDecoder::HotSpot(gfx::Point& hot_spot) const { … }
bool ICOImageDecoder::HotSpotAtIndex(wtf_size_t index,
gfx::Point& hot_spot) const { … }
bool ICOImageDecoder::CompareEntries(const IconDirectoryEntry& a,
const IconDirectoryEntry& b) { … }
void ICOImageDecoder::DecodeSize() { … }
wtf_size_t ICOImageDecoder::DecodeFrameCount() { … }
void ICOImageDecoder::Decode(wtf_size_t index) { … }
void ICOImageDecoder::SetDataForPNGDecoderAtIndex(wtf_size_t index) { … }
void ICOImageDecoder::Decode(wtf_size_t index, bool only_size) { … }
bool ICOImageDecoder::DecodeDirectory() { … }
bool ICOImageDecoder::DecodeAtIndex(wtf_size_t index) { … }
bool ICOImageDecoder::ProcessDirectory() { … }
bool ICOImageDecoder::ProcessDirectoryEntries() { … }
ICOImageDecoder::IconDirectoryEntry ICOImageDecoder::ReadDirectoryEntry() { … }
ICOImageDecoder::ImageType ICOImageDecoder::ImageTypeAtIndex(wtf_size_t index) { … }
}