comparison libpurple/protocols/msn/slpmsg.c @ 16536:1c07ce257fd7

Fix the g_return_if_fail() guards that prevent setting more than one data source. We want the data sources to be NULL, because the one we're setting needs to be the only one set.
author Richard Laager <rlaager@wiktel.com>
date Fri, 27 Apr 2007 18:56:41 +0000
parents 4fc51a87ce42
children 44b4e8bd759b
comparison
equal deleted inserted replaced
16535:1d3d54e964ce 16536:1c07ce257fd7
104 void 104 void
105 msn_slpmsg_set_body(MsnSlpMessage *slpmsg, const char *body, 105 msn_slpmsg_set_body(MsnSlpMessage *slpmsg, const char *body,
106 long long size) 106 long long size)
107 { 107 {
108 /* We can only have one data source at a time. */ 108 /* We can only have one data source at a time. */
109 g_return_if_fail(slpmsg->buffer); 109 g_return_if_fail(slpmsg->buffer == NULL);
110 g_return_if_fail(slpmsg->img); 110 g_return_if_fail(slpmsg->img == NULL);
111 g_return_if_fail(slpmsg->fp); 111 g_return_if_fail(slpmsg->fp == NULL);
112 112
113 if (body != NULL) 113 if (body != NULL)
114 slpmsg->buffer = g_memdup(body, size); 114 slpmsg->buffer = g_memdup(body, size);
115 else 115 else
116 slpmsg->buffer = g_new0(guchar, size); 116 slpmsg->buffer = g_new0(guchar, size);
120 120
121 void 121 void
122 msn_slpmsg_set_image(MsnSlpMessage *slpmsg, PurpleStoredImage *img) 122 msn_slpmsg_set_image(MsnSlpMessage *slpmsg, PurpleStoredImage *img)
123 { 123 {
124 /* We can only have one data source at a time. */ 124 /* We can only have one data source at a time. */
125 g_return_if_fail(slpmsg->buffer); 125 g_return_if_fail(slpmsg->buffer == NULL);
126 g_return_if_fail(slpmsg->img); 126 g_return_if_fail(slpmsg->img == NULL);
127 g_return_if_fail(slpmsg->fp); 127 g_return_if_fail(slpmsg->fp == NULL);
128 128
129 slpmsg->img = purple_imgstore_ref(img); 129 slpmsg->img = purple_imgstore_ref(img);
130 slpmsg->buffer = (guchar *)purple_imgstore_get_data(img); 130 slpmsg->buffer = (guchar *)purple_imgstore_get_data(img);
131 slpmsg->size = purple_imgstore_get_size(img); 131 slpmsg->size = purple_imgstore_get_size(img);
132 } 132 }
135 msn_slpmsg_open_file(MsnSlpMessage *slpmsg, const char *file_name) 135 msn_slpmsg_open_file(MsnSlpMessage *slpmsg, const char *file_name)
136 { 136 {
137 struct stat st; 137 struct stat st;
138 138
139 /* We can only have one data source at a time. */ 139 /* We can only have one data source at a time. */
140 g_return_if_fail(slpmsg->buffer); 140 g_return_if_fail(slpmsg->buffer == NULL);
141 g_return_if_fail(slpmsg->img); 141 g_return_if_fail(slpmsg->img == NULL);
142 g_return_if_fail(slpmsg->fp); 142 g_return_if_fail(slpmsg->fp == NULL);
143 143
144 slpmsg->fp = g_fopen(file_name, "rb"); 144 slpmsg->fp = g_fopen(file_name, "rb");
145 145
146 if (g_stat(file_name, &st) == 0) 146 if (g_stat(file_name, &st) == 0)
147 slpmsg->size = st.st_size; 147 slpmsg->size = st.st_size;