Example #1
0
static void
send_files (NautilusSendto *nst)
{
	GString *mailto;
	char *cmd;

	if (nst->num_dirs > 0) {
		char *zip;
		zip = pack_files (nst->file_list);
		g_list_free_full (nst->file_list, g_free);
		nst->file_list = g_list_append (NULL, zip);
	}

	mailto = g_string_new ("");
	switch (nst->type) {
	case MAILER_BALSA:
		get_balsa_mailto (nst, mailto, nst->file_list);
		break;
	case MAILER_SYLPHEED:
		get_sylpheed_mailto (mailto, nst->file_list);
		break;
	case MAILER_THUNDERBIRD:
		get_thunderbird_mailto (mailto, nst->file_list);
		break;
	case MAILER_EVO:
	default:
		get_evo_mailto (mailto, nst->file_list);
	}

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wformat-nonliteral"
	cmd = g_strdup_printf (nst->mail_cmd, mailto->str);
	g_string_free (mailto, TRUE);
#pragma GCC diagnostic pop

	g_debug ("Mailer type: %d", nst->type);
	g_debug ("Command: %s", cmd);

	/* FIXME: collect errors from this call */
	g_spawn_command_line_async (cmd, NULL);
	g_free (cmd);
}
Example #2
0
w_int32_t pack_main(w_int32_t argc,char **argv)
{
    w_err_t err;
    
    pack_info_s *pkinfo = &pack_info;
    wind_notice("boot pack start.\r\n");
    WIND_ASSERT_RETURN(argc >= 2,W_ERR_INVALID);
    pack_info_init();
    err = get_cfginfo(argv[1],databuff,sizeof(databuff));
    WIND_ASSERT_RETURN(err == W_ERR_OK,-1);
    err = parse_file(databuff,&pack_info);
    WIND_ASSERT_RETURN(err == W_ERR_OK,-1);
    sort_input_file();
    err = check_file_space();
    WIND_ASSERT_TODO_RETURN(err == W_ERR_OK,release_file_buff(),err);
    err = read_bin_files();
    WIND_ASSERT_TODO_RETURN(err == W_ERR_OK,release_file_buff(),err);
    err = pack_files(&pack_info);
    WIND_ASSERT_TODO_RETURN(err == W_ERR_OK,release_file_buff(),-1);
    
    release_file_buff();
    system("pause");
    return 0;
}