Kaynağa Gözat

Merge branch 'release/1.10.x'

rdb 4 yıl önce
ebeveyn
işleme
605651f0e8

+ 0 - 7
README.md

@@ -249,10 +249,3 @@ to everyone who has donated!
 <a href="https://opencollective.com/panda3d" target="_blank">
   <img src="https://opencollective.com/panda3d/contribute/[email protected]?color=blue" width=300 />
 </a>
-
-### Gold Sponsors
-[![](https://opencollective.com/panda3d/tiers/gold-sponsor/0/avatar.svg?avatarHeight=128)](https://opencollective.com/panda3d/tiers/gold-sponsor/0/website)
-[![](https://opencollective.com/panda3d/tiers/gold-sponsor/1/avatar.svg?avatarHeight=128)](https://opencollective.com/panda3d/tiers/gold-sponsor/1/website)
-[![](https://opencollective.com/panda3d/tiers/gold-sponsor/2/avatar.svg?avatarHeight=128)](https://opencollective.com/panda3d/tiers/gold-sponsor/2/website)
-[![](https://opencollective.com/panda3d/tiers/gold-sponsor/3/avatar.svg?avatarHeight=128)](https://opencollective.com/panda3d/tiers/gold-sponsor/3/website)
-[![](https://opencollective.com/panda3d/tiers/gold-sponsor/4/avatar.svg?avatarHeight=128)](https://opencollective.com/panda3d/tiers/gold-sponsor/4/website)

+ 4 - 0
direct/src/dcparser/dcPacker_ext.cxx

@@ -226,6 +226,10 @@ unpack_object() {
       std::string str;
       _this->unpack_string(str);
       object = PyUnicode_FromStringAndSize(str.data(), str.size());
+      if (object == nullptr) {
+        nassert_raise("Unable to decode UTF-8 string; use blob type for binary data");
+        return nullptr;
+      }
     }
     break;
 

+ 6 - 5
direct/src/dist/FreezeTool.py

@@ -90,6 +90,7 @@ ignoreImports = {
     'direct.showbase.PythonUtil': ['pstats', 'profile'],
 
     'toml.encoder': ['numpy'],
+    'py._builtin': ['__builtin__'],
 }
 
 if sys.version_info >= (3, 8):
@@ -106,7 +107,7 @@ overrideModules = {
     # Used by the warnings module, among others, to get line numbers.  Since
     # we set __file__, this would cause it to try and extract Python code
     # lines from the main executable, which we don't want.
-    'linecache': """__all__ = ["getline", "clearcache", "checkcache"]
+    'linecache': """__all__ = ["getline", "clearcache", "checkcache", "lazycache"]
 
 cache = {}
 
@@ -662,7 +663,7 @@ okMissing = [
     'email.Iterators', '_subprocess', 'gestalt', 'java.lang',
     'direct.extensions_native.extensions_darwin', '_manylinux',
     'collections.Iterable', 'collections.Mapping', 'collections.MutableMapping',
-    'collections.Sequence', 'numpy_distutils',
+    'collections.Sequence', 'numpy_distutils', '_winapi',
     ]
 
 # Since around macOS 10.15, Apple's codesigning process has become more strict.
@@ -2625,9 +2626,9 @@ class PandaModuleFinder(modulefinder.ModuleFinder):
         (or self.path if None).  Returns a tuple like (fp, path, stuff), where
         stuff is a tuple like (suffix, mode, type). """
 
-        if imp.is_frozen(name):
-            # Don't pick up modules that are frozen into p3dpython.
-            raise ImportError("'%s' is a frozen module" % (name))
+        #if imp.is_frozen(name):
+        #    # Don't pick up modules that are frozen into p3dpython.
+        #    raise ImportError("'%s' is a frozen module" % (name))
 
         if parent is not None:
             fullname = parent.__name__+'.'+name

+ 1 - 0
direct/src/dist/commands.py

@@ -95,6 +95,7 @@ PACKAGE_DATA_DIRS = {
         ('cefpython3/Chromium Embedded Framework.framework/Chromium Embedded Framework', '', {'PKG_DATA_MAKE_EXECUTABLE'}),
     ],
     'pytz': [('pytz/zoneinfo/*', 'zoneinfo', ())],
+    'certifi': [('certifi/cacert.pem', '', {})],
 }
 
 # Some dependencies have extra directories that need to be scanned for DLLs.

+ 0 - 2
direct/src/showbase/PythonUtil.py

@@ -1127,8 +1127,6 @@ def normalDistrib(a, b, gauss=random.gauss):
     uniformly onto the curve inside [a, b]
 
     ------------------------------------------------------------------------
-    https://statweb.stanford.edu/~naras/jsm/NormalDensity/NormalDensity.html
-
     The 68-95-99.7% Rule
     ====================
     All normal density curves satisfy the following property which is often

+ 3 - 0
panda/src/display/graphicsOutput.cxx

@@ -834,6 +834,9 @@ get_active_display_region(int n) const {
  * which will be a texture suitable for applying to geometry within the scene
  * rendered into this window.
  *
+ * If you pass zero as the buffer size, the buffer will have the same size as
+ * the host window, and will automatically be resized when the host window is.
+ *
  * If tex is not NULL, it is the texture that will be set up for rendering
  * into; otherwise, a new Texture object will be created.  In either case, the
  * target texture can be retrieved from the return value with

+ 10 - 6
panda/src/glstuff/glGraphicsBuffer_src.I

@@ -11,14 +11,18 @@
  * @date 2006-01-15
  */
 
+/**
+ *
+ */
 INLINE int CLP(GraphicsBuffer)::
-get_multisample_count()
-{
-    return _requested_multisamples;
+get_multisample_count() {
+  return _requested_multisamples;
 }
 
+/**
+ *
+ */
 INLINE int CLP(GraphicsBuffer)::
-get_coverage_sample_count()
-{
-    return _requested_coverage_samples;
+get_coverage_sample_count() {
+  return _requested_coverage_samples;
 }

+ 8 - 6
panda/src/glstuff/glGraphicsBuffer_src.h

@@ -23,11 +23,14 @@
  * ARB_draw_buffers extensions.  This design has significant advantages over
  * the older wglGraphicsBuffer and glxGraphicsBuffer:
  *
- * * Can export depth and stencil.  * Supports auxiliary bitplanes.  *
- * Supports non-power-of-two padding.  * Supports tracking of host window
- * size.  * Supports cumulative render-to-texture.  * Faster than pbuffers.  *
- * Can render onto a texture without clearing it first.  * Supports
- * multisample antialiased rendering.
+ * - Can export depth and stencil.
+ * - Supports auxiliary bitplanes.
+ * - Supports non-power-of-two padding.
+ * - Supports tracking of host window size.
+ * - Supports cumulative render-to-texture.
+ * - Faster than pbuffers.
+ * - Can render onto a texture without clearing it first.
+ * - Supports multisample antialiased rendering.
  *
  * Some of these deserve a little explanation.  Auxiliary bitplanes are
  * additional bitplanes above and beyond the normal depth,stencil,color.  One
@@ -45,7 +48,6 @@
  * EXT_framebuffer_blit to allow for multisample antialiasing these offscreen
  * render targets.  If these extensions are unavailable the buffer will render
  * as if multisamples is 0.
- *
  */
 class EXPCL_GL CLP(GraphicsBuffer) : public GraphicsBuffer {
 public:

+ 4 - 2
panda/src/pgui/pgSliderBar.cxx

@@ -605,8 +605,10 @@ item_press(PGItem *item, const MouseWatcherParameter &param) {
       ClockObject::get_global_clock()->get_frame_time() + scroll_initial_delay;
 
   } else if (item == _thumb_button) {
-    _scroll_button_held = nullptr;
-    begin_drag();
+    if (((PGButton *)item)->has_click_button(param.get_button())) {
+      _scroll_button_held = nullptr;
+      begin_drag();
+    }
   }
 }