<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-legacy-support.
</pre>
<p><a href="https://github.com/macports/macports-legacy-support/commit/3b771ed984a5b44391d967b72dd1b51b0895c385">https://github.com/macports/macports-legacy-support/commit/3b771ed984a5b44391d967b72dd1b51b0895c385</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 3b771ed984a5b44391d967b72dd1b51b0895c385
</span>Author: Fred Wright <fw@fwright.net>
AuthorDate: Fri Dec 27 20:44:58 2024 -0800
<span style='display:block; white-space:pre;color:#404040;'> copyfile: Add compatibility wrappers for 10.4.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> The copyfile_state alloc/free functions were renamed between 10.4 and
</span><span style='display:block; white-space:pre;color:#404040;'> 10.5. The 10.4 libSystem provides them under their old names, but
</span><span style='display:block; white-space:pre;color:#404040;'> since the structure has changed between 10.4 and 10.6, using the old
</span><span style='display:block; white-space:pre;color:#404040;'> functions would cause problems. This provides wrappers for the new
</span><span style='display:block; white-space:pre;color:#404040;'> functions under the old names (in 10.4 builds), so that any use of the
</span><span style='display:block; white-space:pre;color:#404040;'> old names will properly use the new versions.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> TESTED:
</span><span style='display:block; white-space:pre;color:#404040;'> Builds, and new test for wrappers passes.
</span>---
src/copyfile.c | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/copyfile.c b/src/copyfile.c
</span><span style='display:block; white-space:pre;color:#808080;'>index 6e56e6c..5cbd495 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/copyfile.c
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/copyfile.c
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -3457,3 +3457,25 @@ exit:
</span> }
#endif /* defined(_COPYFILE_TEST) || __MPLS_LIB_SUPPORT_COPYFILE_10_6__ */
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if !defined(_COPYFILE_TEST) && __MPLS_LIB_SUPPORT_COPYFILE_TIGER__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+/*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * 10.4 used different names for the state alloc/free functions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * Since the structure layouts changed, we can't allow the old versions
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ * to be used, so we shadow them with wrappers around the new versions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ */
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+int
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+copyfile_free(copyfile_state_t state)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return copyfile_state_free(state);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+copyfile_state_t
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+copyfile_init(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return copyfile_state_alloc();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif /* !defined(_COPYFILE_TEST) && __MPLS_LIB_SUPPORT_COPYFILE_TIGER__ */
</span></pre><pre style='margin:0'>
</pre>