From 27d9863fa5aaebbd5fda1a14282e100f181dd005 Mon Sep 17 00:00:00 2001 From: Aaron Carlisle Date: Thu, 22 Mar 2018 11:41:14 -0400 Subject: [PATCH 1/7] Fix T54172: Avoid jumping panel length during playback --- release/scripts/startup/bl_ui/space_sequencer.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 918ce0da32f..0697cf8e56b 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -584,6 +584,8 @@ class SEQUENCER_PT_edit(SequencerButtonsPanel, Panel): if elem and elem.orig_width > 0 and elem.orig_height > 0: col.label(text=iface_("Original Dimension: %dx%d") % (elem.orig_width, elem.orig_height), translate=False) + else: + col.label(text="Original Dimension: None") class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel): From 0bce7186f725eb11903ba2d7f8595bfb5e641d43 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Mar 2018 16:58:09 +0100 Subject: [PATCH 2/7] Glog: Restore haiko OS --- extern/glog/src/config.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/extern/glog/src/config.h b/extern/glog/src/config.h index f5c9c0b0a7b..2703b7ba9dd 100644 --- a/extern/glog/src/config.h +++ b/extern/glog/src/config.h @@ -14,4 +14,6 @@ #include "windows/config.h" #elif defined(__GNU__) #include "config_hurd.h" +#elif defined(__HAIKU__) + #include "config_haiku.h" #endif From 2a4c40f4b9240246e013c9c9587925c7eb5ea70d Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Mar 2018 17:01:42 +0100 Subject: [PATCH 3/7] Glog: Attempt to fix compilation error on Windows Ideally it should be possible without hacking into sources files of Glog itself. --- extern/glog/CMakeLists.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/extern/glog/CMakeLists.txt b/extern/glog/CMakeLists.txt index 32f4dca77e8..59833151e4e 100644 --- a/extern/glog/CMakeLists.txt +++ b/extern/glog/CMakeLists.txt @@ -23,7 +23,6 @@ # ***** END GPL LICENSE BLOCK ***** set(INC - src ../gflags/src ) @@ -71,8 +70,13 @@ if(WIN32) list(APPEND INC src/windows + src ) else() + list(APPEND INC + src + ) + list(APPEND SRC src/demangle.cc src/signalhandler.cc From 9f45f1a6b73218286d8b7bc9e1976bb3c4acb31e Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Mar 2018 17:19:56 +0100 Subject: [PATCH 4/7] GFlags: Fix usage of unused attribute --- extern/gflags/README.blender | 3 +++ extern/gflags/src/gflags/gflags.h | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/extern/gflags/README.blender b/extern/gflags/README.blender index 1f6f0111776..68dba114329 100644 --- a/extern/gflags/README.blender +++ b/extern/gflags/README.blender @@ -21,3 +21,6 @@ Local modifications: not trigger strict compiler warning. - Did the same for CommandLineFlagParser::ValidateFlags(). + +- Ifdef-ed __attribute((unused)) in gflags.h. + This file is compile-time configurable in upstream, so can not avoid change here. diff --git a/extern/gflags/src/gflags/gflags.h b/extern/gflags/src/gflags/gflags.h index 02b40e158dc..d5401f4f575 100644 --- a/extern/gflags/src/gflags/gflags.h +++ b/extern/gflags/src/gflags/gflags.h @@ -285,7 +285,11 @@ class GFLAGS_DLL_DECL FlagSaver { FlagSaver(const FlagSaver&); // no copying! void operator=(const FlagSaver&); -}__attribute((unused)); +} +#ifdef __GNUC__ +__attribute((unused)) +#endif +; // -------------------------------------------------------------------- // Some deprecated or hopefully-soon-to-be-deprecated functions. From c9e7e1987bc044b5b438ab2f50c4654b7afeca4c Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Mar 2018 17:26:02 +0100 Subject: [PATCH 5/7] Glog: Workaround mess around windows and non-windows headers Seems we can not use include directories order trick, since files are included form inside ".." string, which forces current directory to be checked first. --- extern/glog/src/glog/logging.h | 7 +++++++ extern/glog/src/glog/raw_logging.h | 6 ++++++ extern/glog/src/glog/stl_logging.h | 6 ++++++ 3 files changed, 19 insertions(+) diff --git a/extern/glog/src/glog/logging.h b/extern/glog/src/glog/logging.h index 8238ca9610f..7aac880a952 100644 --- a/extern/glog/src/glog/logging.h +++ b/extern/glog/src/glog/logging.h @@ -33,6 +33,11 @@ // Pretty much everybody needs to #include this file so that they can // log various happenings. // + +#ifdef WIN32 +# include "windows/glog/logging.h" +#else // WIN32 + #ifndef _LOGGING_H_ #define _LOGGING_H_ @@ -1623,3 +1628,5 @@ GOOGLE_GLOG_DLL_DECL void InstallFailureWriter( } #endif // _LOGGING_H_ + +#endif // WIN32 diff --git a/extern/glog/src/glog/raw_logging.h b/extern/glog/src/glog/raw_logging.h index 65278f62803..b030f7f736d 100644 --- a/extern/glog/src/glog/raw_logging.h +++ b/extern/glog/src/glog/raw_logging.h @@ -33,6 +33,10 @@ // acquire any locks, and can therefore be used by low-level memory // allocation and synchronization code. +#ifdef WIN32 +# include "windows/glog/raw_logging.h" +#else // WIN32 + #ifndef BASE_RAW_LOGGING_H_ #define BASE_RAW_LOGGING_H_ @@ -183,3 +187,5 @@ GOOGLE_GLOG_DLL_DECL void RawLog__SetLastTime(const struct tm& t, int usecs); } #endif // BASE_RAW_LOGGING_H_ + +#endif // WIN32 diff --git a/extern/glog/src/glog/stl_logging.h b/extern/glog/src/glog/stl_logging.h index 40a15aa4578..bd000152738 100644 --- a/extern/glog/src/glog/stl_logging.h +++ b/extern/glog/src/glog/stl_logging.h @@ -44,6 +44,10 @@ // - GLOG_STL_LOGGING_FOR_EXT_SLIST - // +#ifdef WIN32 +# include "windows/glog/stl_logging.h" +#else // WIN32 + #ifndef UTIL_GTL_STL_LOGGING_INL_H_ #define UTIL_GTL_STL_LOGGING_INL_H_ @@ -218,3 +222,5 @@ inline void PrintSequence(std::ostream& out, Iter begin, Iter end) { namespace std { using ::operator<<; } #endif // UTIL_GTL_STL_LOGGING_INL_H_ + +#endif // WIN32 From 4486eddfaad28ac7a3700c80eed4ece45976625b Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Mar 2018 17:32:51 +0100 Subject: [PATCH 6/7] GLog: Tweak settings according to our config We do have gflags. --- extern/glog/src/windows/glog/logging.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extern/glog/src/windows/glog/logging.h b/extern/glog/src/windows/glog/logging.h index f521a2b9424..606831f211c 100644 --- a/extern/glog/src/windows/glog/logging.h +++ b/extern/glog/src/windows/glog/logging.h @@ -86,7 +86,7 @@ #include // a third place for uint16_t or u_int16_t #endif -#if 0 +#if 1 #include #endif From 897a21e6a34513e70af2dc452fa704643f91e796 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Thu, 22 Mar 2018 17:48:36 +0100 Subject: [PATCH 7/7] Glog: Restore some custom config for MSVC2015 --- extern/glog/src/windows/config.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/extern/glog/src/windows/config.h b/extern/glog/src/windows/config.h index 2d23fb08159..1cc2533daa5 100644 --- a/extern/glog/src/windows/config.h +++ b/extern/glog/src/windows/config.h @@ -1,5 +1,8 @@ /* src/config.h.in. Generated from configure.ac by autoheader. */ +/* define if you have google gflags library */ +#define HAVE_LIB_GFLAGS 1 + /* Namespace for Google classes */ #define GOOGLE_NAMESPACE google @@ -9,6 +12,10 @@ /* Puts following code inside the Google namespace */ #define _START_GOOGLE_NAMESPACE_ namespace google { +#if defined(__MINGW32__) || (defined(_MSC_VER) && (_MSC_VER >= 1900)) +# define HAVE_SNPRINTF +#endif + /* Always the empty-string on non-windows systems. On windows, should be "__declspec(dllexport)". This way, when we compile the dll, we export our functions/classes. It's safe to define this here because config.h is only