+2002-11-13 [colin] 0.8.5claws136
+
+ * src/msgcache.c
+ Remove duplicated code
+ * src/defs.h
+ Bumped CACHE_VERSION and MARK_VERSION
+ * src/procmsg.[ch]
+ Network endian for cache and mark files
+
2002-11-12 [colin] 0.8.5claws135
* src/inc.c
MICRO_VERSION=5
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=claws135
+EXTRA_VERSION=claws136
VERSION=$MAJOR_VERSION.$MINOR_VERSION.$MICRO_VERSION$EXTRA_VERSION
dnl set $target
#define FOLDER_LIST "folderlist.xml"
#define CACHE_FILE ".sylpheed_cache"
#define MARK_FILE ".sylpheed_mark"
-#define CACHE_VERSION 20
-#define MARK_VERSION 2
+#define CACHE_VERSION 21
+#define MARK_VERSION 3
#define DEFAULT_SIGNATURE ".signature"
#define DEFAULT_INC_PATH "/usr/bin/mh/inc"
fclose(fp);
}
-#define WRITE_CACHE_DATA_INT(n, fp) \
- fwrite(&n, sizeof(n), 1, fp)
-
-#define WRITE_CACHE_DATA(data, fp) \
-{ \
- gint len; \
- \
- if (data == NULL || (len = strlen(data)) == 0) { \
- len = 0; \
- WRITE_CACHE_DATA_INT(len, fp); \
- } else { \
- len = strlen(data); \
- WRITE_CACHE_DATA_INT(len, fp); \
- fwrite(data, len, 1, fp); \
- } \
-}
-
void msgcache_write_cache(MsgInfo *msginfo, FILE *fp)
{
MsgTmpFlags flags = msginfo->flags.tmp_flags & MSG_CACHED_FLAG_MASK;
size_t len;
if (fread(&len, sizeof(len), 1, fp) == 1) {
+ len = me2ne_32(len);
if (len < 0)
ret = -1;
else {
g_warning(_("Cache data is corrupted\n")); \
procmsg_msginfo_free(msginfo); \
break; \
+ } else { \
+ n = me2ne_32(n); \
} \
}
#define MSG_IS_IGNORE_THREAD(msg) (((msg).perm_flags & MSG_IGNORE_THREAD) != 0)
#define MSG_IS_RETRCPT_PENDING(msg) (((msg).perm_flags & MSG_RETRCPT_PENDING) != 0)
+/* code from bits/byteswap.h (C) 1997, 1998 Free Software Foundation, Inc. */
+#ifdef BIG_ENDIAN_HOST
+#define me2ne_32(x) (x)
+#else
+#define me2ne_32(x) \
+ ((((x) & 0xff000000) >> 24) | (((x) & 0x00ff0000) >> 8) | \
+ (((x) & 0x0000ff00) << 8) | (((x) & 0x000000ff) << 24))
-#define WRITE_CACHE_DATA_INT(n, fp) \
- fwrite(&n, sizeof(n), 1, fp)
+#endif
+
+#define WRITE_CACHE_DATA_INT(n, fp) { \
+ int i = n; i = me2ne_32(i); \
+ fwrite(&i, sizeof(n), 1, fp); \
+}
#define WRITE_CACHE_DATA(data, fp) \
{ \