summaryrefslogtreecommitdiff
path: root/thirdparty/bullet/patches
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/bullet/patches')
-rw-r--r--thirdparty/bullet/patches/bullet-fix-warnings.patch42
-rw-r--r--thirdparty/bullet/patches/fix-win32-scheduler-uwp.patch24
2 files changed, 66 insertions, 0 deletions
diff --git a/thirdparty/bullet/patches/bullet-fix-warnings.patch b/thirdparty/bullet/patches/bullet-fix-warnings.patch
new file mode 100644
index 0000000000..69cde1b16e
--- /dev/null
+++ b/thirdparty/bullet/patches/bullet-fix-warnings.patch
@@ -0,0 +1,42 @@
+diff --git a/thirdparty/bullet/BulletSoftBody/btSoftBody.h b/thirdparty/bullet/BulletSoftBody/btSoftBody.h
+index f578487b8c..dfde8fd1e4 100644
+--- a/thirdparty/bullet/BulletSoftBody/btSoftBody.h
++++ b/thirdparty/bullet/BulletSoftBody/btSoftBody.h
+@@ -1317,8 +1317,8 @@ public:
+ }
+ for (int k = 0; k < m_faceNodeContacts.size(); ++k)
+ {
+- int i = indices[k];
+- btSoftBody::DeformableFaceNodeContact& c = m_faceNodeContacts[i];
++ int idx = indices[k];
++ btSoftBody::DeformableFaceNodeContact& c = m_faceNodeContacts[idx];
+ btSoftBody::Node* node = c.m_node;
+ btSoftBody::Face* face = c.m_face;
+ const btVector3& w = c.m_bary;
+diff --git a/thirdparty/bullet/LinearMath/btSerializer.h b/thirdparty/bullet/LinearMath/btSerializer.h
+index ce4fc34e20..11592d2ccd 100644
+--- a/thirdparty/bullet/LinearMath/btSerializer.h
++++ b/thirdparty/bullet/LinearMath/btSerializer.h
+@@ -499,7 +499,6 @@ public:
+ writeDNA();
+
+ //if we didn't pre-allocate a buffer, we need to create a contiguous buffer now
+- int mysize = 0;
+ if (!m_totalSize)
+ {
+ if (m_buffer)
+@@ -511,14 +510,12 @@ public:
+ unsigned char* currentPtr = m_buffer;
+ writeHeader(m_buffer);
+ currentPtr += BT_HEADER_LENGTH;
+- mysize += BT_HEADER_LENGTH;
+ for (int i = 0; i < m_chunkPtrs.size(); i++)
+ {
+ int curLength = sizeof(btChunk) + m_chunkPtrs[i]->m_length;
+ memcpy(currentPtr, m_chunkPtrs[i], curLength);
+ btAlignedFree(m_chunkPtrs[i]);
+ currentPtr += curLength;
+- mysize += curLength;
+ }
+ }
+
diff --git a/thirdparty/bullet/patches/fix-win32-scheduler-uwp.patch b/thirdparty/bullet/patches/fix-win32-scheduler-uwp.patch
new file mode 100644
index 0000000000..c65db49388
--- /dev/null
+++ b/thirdparty/bullet/patches/fix-win32-scheduler-uwp.patch
@@ -0,0 +1,24 @@
+diff --git a/thirdparty/bullet/LinearMath/TaskScheduler/btThreadSupportWin32.cpp b/thirdparty/bullet/LinearMath/TaskScheduler/btThreadSupportWin32.cpp
+index 922e449cce..5862264a67 100644
+--- a/thirdparty/bullet/LinearMath/TaskScheduler/btThreadSupportWin32.cpp
++++ b/thirdparty/bullet/LinearMath/TaskScheduler/btThreadSupportWin32.cpp
+@@ -82,6 +82,11 @@ typedef BOOL(WINAPI* Pfn_GetLogicalProcessorInformation)(PSYSTEM_LOGICAL_PROCESS
+ void getProcessorInformation(btProcessorInfo* procInfo)
+ {
+ memset(procInfo, 0, sizeof(*procInfo));
++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) && \
++ !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
++ // Can't dlopen libraries on UWP.
++ return;
++#else
+ Pfn_GetLogicalProcessorInformation getLogicalProcInfo =
+ (Pfn_GetLogicalProcessorInformation)GetProcAddress(GetModuleHandle(TEXT("kernel32")), "GetLogicalProcessorInformation");
+ if (getLogicalProcInfo == NULL)
+@@ -160,6 +165,7 @@ void getProcessorInformation(btProcessorInfo* procInfo)
+ }
+ }
+ free(buf);
++#endif
+ }
+
+ ///btThreadSupportWin32 helps to initialize/shutdown libspe2, start/stop SPU tasks and communication