diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog
index 717be4f7be62ef8ab98a1207d56cc4c0800ad0c3..cae17d89a76cb2140529b03928e1b8c2c7810276 100644
--- a/libmudflap/ChangeLog
+++ b/libmudflap/ChangeLog
@@ -1,3 +1,8 @@
+2005-08-22  Jim Wilson  <wilson@specifix.com>
+
+	* mf-hooks2.c (MF_REGISTER_fopen): Define to __MF_TYPE_STATIC when
+	__FreeBSD__ is defined.
+
 2005-08-17  Jim Wilson  <wilson@specifix.com>
 
 	* mf-hooks1.c (malloc, calloc, realloc, free,
diff --git a/libmudflap/mf-hooks2.c b/libmudflap/mf-hooks2.c
index 2b961b47a137743bfa441d0625723a1ff0c283ee..0ffcf09ac1f1a274d1cca8e5173e5642c5e211d4 100644
--- a/libmudflap/mf-hooks2.c
+++ b/libmudflap/mf-hooks2.c
@@ -544,8 +544,14 @@ WRAPPER2(struct tm*, gmtime, const time_t *timep)
 /* The following indicate if the result of the corresponding function
  * should be explicitly un/registered by the wrapper
 */
+
+#ifdef __FreeBSD__
+#define MF_REGISTER_fopen		__MF_TYPE_STATIC
+#else
 #undef  MF_REGISTER_fopen
+#endif
 #define MF_RESULT_SIZE_fopen		(sizeof (FILE))
+
 #undef  MF_REGISTER_opendir
 #define MF_RESULT_SIZE_opendir		0	/* (sizeof (DIR)) */
 #undef  MF_REGISTER_readdir