add: }
context: gint gsb_form_validate_transfer ( gint transaction_number,				  gint new_transaction,				  gchar *name_transfer_account ){    gint contra_transaction_number;    gint account_transfer;    account_transfer = gsb_account_get_no_account_by_name ( name_transfer_account );    /* either it's a new transfer or a change of a non-transfer transaction     * either it was already a transfer, in that case, if we change the target account,     * we delete the contra-transaction and it's the same as a new transfer */    if ( !new_transaction )    {	/* it's a modification of a transaction */	if ((contra_transaction_number = gsb_transaction_data_get_transaction_number_transfer (transaction_number)))	{	    /* the transaction is a transfer */	    if ( gsb_transaction_data_get_account_number_transfer (transaction_number) != account_transfer )	    {		/* it was a transfer and the user changed the target account so we delete the last contra transaction		 * contra_transaction_transfer has just been set */		gsb_transaction_data_set_transaction_number_transfer ( contra_transaction_number,								       0);		gsb_transactions_list_delete_transaction (contra_transaction_number);		new_transaction = 1;	    }	}	else	{	    /* the transaction was not a transfer, so it's the same as a new transaction, to do the contra-transaction */	    new_transaction = 1;	}    }    /* so, now, it's either a new transfer and new_transaction is TRUE,     * either a transfer without changing the target account and in that case, contra_transaction_number is     * already set */    if ( new_transaction )	contra_transaction_number = gsb_transaction_data_new_transaction (account_transfer);    gsb_transaction_data_copy_transaction ( transaction_number,					    contra_transaction_number );    /* we have to change the amount by the opposite */    gsb_transaction_data_set_amount (contra_transaction_number,				      -gsb_transaction_data_get_amount (transaction_number));    /* we have to check the change */    gsb_currency_check_for_change ( contra_transaction_number );    /* set the method of payment     * FIXME : for the scheduled transactions, we arrive here but there is no button for that,     * so for now, TRANSACTION_FORM_CONTRA won't be visible so he just copy the method of the scheduled transaction */    if ( verifie_element_formulaire_existe ( TRANSACTION_FORM_CONTRA )	 &&	 GTK_WIDGET_VISIBLE ( widget_formulaire_par_element (TRANSACTION_FORM_CONTRA) ))	gsb_transaction_data_set_method_of_payment_number ( contra_transaction_number,							    GPOINTER_TO_INT ( gtk_object_get_data ( GTK_OBJECT ( GTK_OPTION_MENU ( widget_formulaire_par_element (TRANSACTION_FORM_CONTRA) ) -> menu_item ),												    "no_type" )));    /* set the link between the transactions */    gsb_transaction_data_set_transaction_number_transfer ( transaction_number,							   contra_transaction_number);    gsb_transaction_data_set_account_number_transfer ( transaction_number,						       gsb_transaction_data_get_account_number (contra_transaction_number));    gsb_transaction_data_set_transaction_number_transfer ( contra_transaction_number,							   transaction_number);    gsb_transaction_data_set_account_number_transfer ( contra_transaction_number,						       gsb_transaction_data_get_account_number (transaction_number));    /* show the contra_transaction */    if ( new_transaction )	gsb_transactions_list_append_new_transaction (contra_transaction_number);    else	gsb_transactions_list_update_transaction ( gsb_transaction_data_get_pointer_to_transaction ( contra_transaction_number) );    return contra_transaction_number;}