Exemple #1
0
void rui_remote_ui_copy (const RUIRemoteUI* self, RUIRemoteUI* dest) {
	const gchar* _tmp0_;
	gchar* _tmp1_;
	const gchar* _tmp2_;
	gchar* _tmp3_;
	const gchar* _tmp4_;
	gchar* _tmp5_;
	RUIProtocol* _tmp6_;
	gint _tmp6__length1;
	RUIProtocol* _tmp7_;
	gint _tmp7__length1;
	RUIIcon* _tmp8_;
	gint _tmp8__length1;
	RUIIcon* _tmp9_;
	gint _tmp9__length1;
	_tmp0_ = (*self).id;
	_tmp1_ = g_strdup (_tmp0_);
	_g_free0 ((*dest).id);
	(*dest).id = _tmp1_;
	_tmp2_ = (*self).name;
	_tmp3_ = g_strdup (_tmp2_);
	_g_free0 ((*dest).name);
	(*dest).name = _tmp3_;
	_tmp4_ = (*self).description;
	_tmp5_ = g_strdup (_tmp4_);
	_g_free0 ((*dest).description);
	(*dest).description = _tmp5_;
	_tmp6_ = (*self).protocols;
	_tmp6__length1 = (*self).protocols_length1;
	_tmp7_ = (_tmp6_ != NULL) ? _vala_array_dup5 (_tmp6_, _tmp6__length1) : ((gpointer) _tmp6_);
	_tmp7__length1 = _tmp6__length1;
	(*dest).protocols = (_vala_RUIProtocol_array_free ((*dest).protocols, (*dest).protocols_length1), NULL);
	(*dest).protocols = _tmp7_;
	(*dest).protocols_length1 = _tmp7__length1;
	_tmp8_ = (*self).icons;
	_tmp8__length1 = (*self).icons_length1;
	_tmp9_ = (_tmp8_ != NULL) ? _vala_array_dup6 (_tmp8_, _tmp8__length1) : ((gpointer) _tmp8_);
	_tmp9__length1 = _tmp8__length1;
	(*dest).icons = (_vala_RUIIcon_array_free ((*dest).icons, (*dest).icons_length1), NULL);
	(*dest).icons = _tmp9_;
	(*dest).icons_length1 = _tmp9__length1;
}
static gboolean fso_gsm_gsm_voice_mail_service_real_get_stored_voice_mails_co (FsoGsmGsmVoiceMailServiceGetStoredVoiceMailsData* _data_) {
	switch (_data_->_state_) {
		case 0:
		goto _state_0;
		case 1:
		goto _state_1;
		default:
		g_assert_not_reached ();
	}
	_state_0:
	fso_gsm_service_checkAvailability ((FsoGsmService*) _data_->self, FSO_GSM_MODEM_STATUS_ALIVE_NO_SIM, &_data_->_inner_error_);
	if (_data_->_inner_error_ != NULL) {
		if ((((_data_->_inner_error_->domain == FREE_SMARTPHONE_GSM_ERROR) || (_data_->_inner_error_->domain == FREE_SMARTPHONE_ERROR)) || (_data_->_inner_error_->domain == G_DBUS_ERROR)) || (_data_->_inner_error_->domain == G_IO_ERROR)) {
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
			g_error_free (_data_->_inner_error_);
			if (_data_->_state_ == 0) {
				g_simple_async_result_complete_in_idle (_data_->_async_result);
			} else {
				g_simple_async_result_complete (_data_->_async_result);
			}
			g_object_unref (_data_->_async_result);
			return FALSE;
		} else {
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
			g_clear_error (&_data_->_inner_error_);
			return FALSE;
		}
	}
	_data_->_tmp0_ = ((FsoGsmService*) _data_->self)->modem;
	_data_->_tmp1_ = NULL;
	_data_->_tmp1_ = fso_gsm_modem_createMediator (_data_->_tmp0_, FSO_GSM_TYPE_VOICE_MAILBOX_GET_RECORDINGS, (GBoxedCopyFunc) g_object_ref, g_object_unref, &_data_->_inner_error_);
	_data_->m = (FsoGsmVoiceMailboxGetRecordings*) _data_->_tmp1_;
	if (_data_->_inner_error_ != NULL) {
		if ((((_data_->_inner_error_->domain == FREE_SMARTPHONE_GSM_ERROR) || (_data_->_inner_error_->domain == FREE_SMARTPHONE_ERROR)) || (_data_->_inner_error_->domain == G_DBUS_ERROR)) || (_data_->_inner_error_->domain == G_IO_ERROR)) {
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
			g_error_free (_data_->_inner_error_);
			if (_data_->_state_ == 0) {
				g_simple_async_result_complete_in_idle (_data_->_async_result);
			} else {
				g_simple_async_result_complete (_data_->_async_result);
			}
			g_object_unref (_data_->_async_result);
			return FALSE;
		} else {
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
			g_clear_error (&_data_->_inner_error_);
			return FALSE;
		}
	}
	_data_->_tmp2_ = _data_->m;
	_data_->_state_ = 1;
	fso_gsm_voice_mailbox_get_recordings_run (_data_->_tmp2_, fso_gsm_gsm_voice_mail_service_get_stored_voice_mails_ready, _data_);
	return FALSE;
	_state_1:
	fso_gsm_voice_mailbox_get_recordings_run_finish (_data_->_tmp2_, _data_->_res_, &_data_->_inner_error_);
	if (_data_->_inner_error_ != NULL) {
		if ((((_data_->_inner_error_->domain == FREE_SMARTPHONE_GSM_ERROR) || (_data_->_inner_error_->domain == FREE_SMARTPHONE_ERROR)) || (_data_->_inner_error_->domain == G_DBUS_ERROR)) || (_data_->_inner_error_->domain == G_IO_ERROR)) {
			g_simple_async_result_set_from_error (_data_->_async_result, _data_->_inner_error_);
			g_error_free (_data_->_inner_error_);
			_g_object_unref0 (_data_->m);
			if (_data_->_state_ == 0) {
				g_simple_async_result_complete_in_idle (_data_->_async_result);
			} else {
				g_simple_async_result_complete (_data_->_async_result);
			}
			g_object_unref (_data_->_async_result);
			return FALSE;
		} else {
			_g_object_unref0 (_data_->m);
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _data_->_inner_error_->message, g_quark_to_string (_data_->_inner_error_->domain), _data_->_inner_error_->code);
			g_clear_error (&_data_->_inner_error_);
			return FALSE;
		}
	}
	_data_->_tmp3_ = _data_->m;
	_data_->_tmp4_ = _data_->_tmp3_->stored_mails;
	_data_->_tmp4__length1 = _data_->_tmp3_->stored_mails_length1;
	_data_->_tmp5_ = (_data_->_tmp4_ != NULL) ? _vala_array_dup5 (_data_->_tmp4_, _data_->_tmp4__length1) : ((gpointer) _data_->_tmp4_);
	_data_->_tmp5__length1 = _data_->_tmp4__length1;
	_data_->_tmp6_ = _data_->_tmp5_;
	_data_->_tmp6__length1 = _data_->_tmp5__length1;
	_data_->result_length1 = _data_->_tmp6__length1;
	_data_->result = _data_->_tmp6_;
	_g_object_unref0 (_data_->m);
	if (_data_->_state_ == 0) {
		g_simple_async_result_complete_in_idle (_data_->_async_result);
	} else {
		g_simple_async_result_complete (_data_->_async_result);
	}
	g_object_unref (_data_->_async_result);
	return FALSE;
	_g_object_unref0 (_data_->m);
	if (_data_->_state_ == 0) {
		g_simple_async_result_complete_in_idle (_data_->_async_result);
	} else {
		g_simple_async_result_complete (_data_->_async_result);
	}
	g_object_unref (_data_->_async_result);
	return FALSE;
}
static guint8* request_handler_get_page (RequestHandler* self, const gchar* page, int* result_length1, GError** error) {
	guint8* result = NULL;
	gchar* _tmp0_;
	gchar* content;
	const gchar* _tmp1_;
	WikiFile* _tmp2_;
	WikiFile* file;
	WikiFile* _tmp3_;
	gboolean _tmp4_ = FALSE;
	gboolean _tmp6_ = FALSE;
	WikiFile* _tmp7_;
	gboolean _tmp8_ = FALSE;
	gboolean _tmp13_;
	const gchar* _tmp15_;
	gchar* _tmp16_ = NULL;
	gchar* _tmp17_;
	const gchar* _tmp18_;
	gchar* _tmp19_ = NULL;
	gchar* _tmp20_;
	gchar* _tmp21_;
	gchar* _tmp22_;
	const gchar* _tmp23_;
	gchar* _tmp24_;
	gchar* _tmp25_;
	gchar* _tmp26_ = NULL;
	gchar* _tmp27_;
	gchar* _tmp28_;
	gchar* _tmp29_;
	gchar* _tmp30_;
	gchar* _tmp31_;
	gchar* _result_;
	const gchar* _tmp32_;
	guint8* _tmp33_;
	gint _tmp33__length1;
	guint8* _tmp34_;
	gint _tmp34__length1;
	guint8* _tmp35_;
	gint _tmp35__length1;
	guint8* _tmp36_;
	gint _tmp36__length1;
	GError * _inner_error_ = NULL;
	g_return_val_if_fail (self != NULL, NULL);
	g_return_val_if_fail (page != NULL, NULL);
	_tmp0_ = g_strdup ("");
	content = _tmp0_;
	_tmp1_ = page;
	_tmp2_ = wiki_file_new (_tmp1_);
	file = _tmp2_;
	_tmp3_ = file;
	_tmp4_ = wiki_file_exists (_tmp3_);
	if (!_tmp4_) {
		const gchar* _tmp5_;
		_tmp5_ = page;
		request_handler_create_default_pages (self, _tmp5_);
	}
	_tmp7_ = file;
	_tmp8_ = wiki_file_exists (_tmp7_);
	if (!_tmp8_) {
		_tmp6_ = TRUE;
	} else {
		WikiFile* _tmp9_;
		gchar* _tmp10_ = NULL;
		gchar* _tmp11_;
		const gchar* _tmp12_;
		_tmp9_ = file;
		_tmp10_ = wiki_file_as_html (_tmp9_, &_inner_error_);
		_tmp11_ = _tmp10_;
		if (_inner_error_ != NULL) {
			if (_inner_error_->domain == IO_ERROR) {
				g_propagate_error (error, _inner_error_);
				_g_object_unref0 (file);
				_g_free0 (content);
				return NULL;
			} else {
				_g_object_unref0 (file);
				_g_free0 (content);
				g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
				g_clear_error (&_inner_error_);
				return NULL;
			}
		}
		_g_free0 (content);
		content = _tmp11_;
		_tmp12_ = content;
		_tmp6_ = _tmp12_ == NULL;
	}
	_tmp13_ = _tmp6_;
	if (_tmp13_) {
		GError* _tmp14_;
		_tmp14_ = g_error_new_literal (IO_ERROR, IO_ERROR_FILE_NOT_FOUND, "Requested page could not be found.");
		_inner_error_ = _tmp14_;
		if (_inner_error_->domain == IO_ERROR) {
			g_propagate_error (error, _inner_error_);
			_g_object_unref0 (file);
			_g_free0 (content);
			return NULL;
		} else {
			_g_object_unref0 (file);
			_g_free0 (content);
			g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error_->message, g_quark_to_string (_inner_error_->domain), _inner_error_->code);
			g_clear_error (&_inner_error_);
			return NULL;
		}
	}
	_tmp15_ = page;
	_tmp16_ = request_handler_get_header (self, _tmp15_);
	_tmp17_ = _tmp16_;
	_tmp18_ = page;
	_tmp19_ = request_handler_get_page_header (self, _tmp18_);
	_tmp20_ = _tmp19_;
	_tmp21_ = g_strconcat (_tmp17_, _tmp20_, NULL);
	_tmp22_ = _tmp21_;
	_tmp23_ = content;
	_tmp24_ = g_strconcat (_tmp22_, _tmp23_, NULL);
	_tmp25_ = _tmp24_;
	_tmp26_ = request_handler_get_page_footer (self);
	_tmp27_ = _tmp26_;
	_tmp28_ = g_strconcat (_tmp25_, _tmp27_, NULL);
	_tmp29_ = _tmp28_;
	_tmp30_ = g_strconcat (_tmp29_, WIKI_TEXT_WIKIFOOTER, NULL);
	_tmp31_ = _tmp30_;
	_g_free0 (_tmp29_);
	_g_free0 (_tmp27_);
	_g_free0 (_tmp25_);
	_g_free0 (_tmp22_);
	_g_free0 (_tmp20_);
	_g_free0 (_tmp17_);
	_result_ = _tmp31_;
	_tmp32_ = _result_;
	_tmp33_ = string_get_data (_tmp32_, &_tmp33__length1);
	_tmp34_ = _tmp33_;
	_tmp34__length1 = _tmp33__length1;
	_tmp35_ = (_tmp34_ != NULL) ? _vala_array_dup5 (_tmp34_, _tmp34__length1) : ((gpointer) _tmp34_);
	_tmp35__length1 = _tmp34__length1;
	_tmp36_ = _tmp35_;
	_tmp36__length1 = _tmp35__length1;
	if (result_length1) {
		*result_length1 = _tmp36__length1;
	}
	result = _tmp36_;
	_g_free0 (_result_);
	_g_object_unref0 (file);
	_g_free0 (content);
	return result;
}