From a0d1647839180388805be150794a812c44e59053 Mon Sep 17 00:00:00 2001
From: Julien Duroure <julien.duroure@gmail.com>
Date: Fri, 12 Nov 2021 09:35:07 +0100
Subject: [PATCH] glTF exporter: avoid issue with setting frame with python v
 >= 3.10

---
 io_scene_gltf2/__init__.py                                      | 2 +-
 io_scene_gltf2/blender/exp/gltf2_blender_export.py              | 2 +-
 .../exp/gltf2_blender_gather_animation_sampler_keyframes.py     | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py
index 3c4022d51..babf37fb6 100755
--- a/io_scene_gltf2/__init__.py
+++ b/io_scene_gltf2/__init__.py
@@ -15,7 +15,7 @@
 bl_info = {
     'name': 'glTF 2.0 format',
     'author': 'Julien Duroure, Scurest, Norbert Nopper, Urs Hanselmann, Moritz Becher, Benjamin SchmithĂĽsen, Jim Eckerlein, and many external contributors',
-    "version": (1, 7, 32),
+    "version": (1, 7, 33),
     'blender': (3, 0, 0),
     'location': 'File > Import-Export',
     'description': 'Import-Export as glTF 2.0',
diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_export.py b/io_scene_gltf2/blender/exp/gltf2_blender_export.py
index 522f13deb..fc78e9b5e 100755
--- a/io_scene_gltf2/blender/exp/gltf2_blender_export.py
+++ b/io_scene_gltf2/blender/exp/gltf2_blender_export.py
@@ -54,7 +54,7 @@ def save(context, export_settings):
     __notify_end(context, end_time - start_time)
 
     if not export_settings['gltf_current_frame']:
-        bpy.context.scene.frame_set(original_frame)
+        bpy.context.scene.frame_set(int(original_frame))
     return {'FINISHED'}
 
 
diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_sampler_keyframes.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_sampler_keyframes.py
index d70f4de2b..f1e94d9e0 100755
--- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_sampler_keyframes.py
+++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_sampler_keyframes.py
@@ -157,7 +157,7 @@ def get_bone_matrix(blender_object_if_armature: typing.Optional[bpy.types.Object
     while frame <= end_frame:
         data[frame] = {}
         # we need to bake in the constraints
-        bpy.context.scene.frame_set(frame)
+        bpy.context.scene.frame_set(int(frame))
         for pbone in blender_object_if_armature.pose.bones:
             if bake_bone is None:
                 matrix = pbone.matrix_basis.copy()
-- 
GitLab