Chromium Code Reviews| Index: src/images/SkImageEncoder_Factory.cpp | 
| diff --git a/src/images/SkImageEncoder_Factory.cpp b/src/images/SkImageEncoder_Factory.cpp | 
| index 2931d12eae7c42042c53b8f22a83aaae2bc7094a..526cfa370b97d95c1474bb7e7c6d1ab3dd4269fb 100644 | 
| --- a/src/images/SkImageEncoder_Factory.cpp | 
| +++ b/src/images/SkImageEncoder_Factory.cpp | 
| @@ -8,16 +8,47 @@ | 
| #include "SkImageEncoder.h" | 
| -template SkImageEncoder_EncodeReg* SkImageEncoder_EncodeReg::gHead; | 
| +#include "SkImageDecoder_libpng.h" | 
| +#include "SkImageDecoder_libjpeg.h" | 
| +#include "SkImageDecoder_libwebp.h" | 
| +#if !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK) | 
| +#include "SkImageDecoder_ktx.h" | 
| +#endif | 
| +#if defined(SK_BUILD_FOR_WIN) | 
| +#include "SkImageDecoder_WIC.h" | 
| +#endif | 
| +#if defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS) | 
| +#include "SkImageDecoder_CG.h" | 
| +#endif | 
| SkImageEncoder* SkImageEncoder::Create(Type t) { | 
| SkImageEncoder* codec = NULL; | 
| - const SkImageEncoder_EncodeReg* curr = SkImageEncoder_EncodeReg::Head(); | 
| - while (curr) { | 
| - if ((codec = curr->factory()(t)) != NULL) { | 
| - return codec; | 
| - } | 
| - curr = curr->next(); | 
| +#if defined(SK_BUILD_FOR_WIN) | 
| 
 
Kimmo Kinnunen
2014/10/20 14:03:39
I can double-check the encoder order and fix poten
 
scroggo
2014/11/12 18:00:13
FYI, we have compile bots for windows and mac that
 
Kimmo Kinnunen
2014/11/18 08:29:45
I know, but I don't have access to run the bots ma
 
scroggo
2014/11/18 16:52:23
That's annoying. Sorry, I didn't realize you could
 
 | 
| + if ((codec = SkCreateImageEncoder_WIC(t)) != NULL) { | 
| + return codec; | 
| } | 
| +#endif | 
| +#if defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS) | 
| + if ((codec = SkCreateImageEncoder_CG(t)) != NULL) { | 
| + return codec; | 
| + } | 
| +#endif | 
| +#if !defined(SK_BUILD_FOR_MAC) && !defined(SK_BUILD_FOR_IOS) && !defined(SK_BUILD_FOR_WIN) | 
| + if ((codec = SkCreatePNGImageEncoder(t)) != NULL) { | 
| + return codec; | 
| + } | 
| +#endif | 
| + if ((codec = SkCreateJPEGImageEncoder(t)) != NULL) { | 
| + return codec; | 
| + } | 
| + if ((codec = SkCreateWEBPImageEncoder(t)) != NULL) { | 
| + return codec; | 
| + } | 
| +#if !defined(SK_BUILD_FOR_ANDROID_FRAMEWORK) | 
| + if ((codec = SkCreateKTXImageEncoder(t)) != NULL) { | 
| + return codec; | 
| + } | 
| +#endif | 
| + | 
| return NULL; | 
| } |