Example #1
0
/*FUNCTION*/
int hook_chdir(pExecuteObject pEo,
               char *Buffer
  ){
/*noverbatim
CUT*/
  return file_chdir(Buffer);
  }
Example #2
0
File: sys.c Project: chobits/tinyos
int sys_fchdir(int fd)
{
	struct file *file = fd_get_file(fd);
	int r = -1;
	if (!file)
		return -1;
	r = file_chdir(file);
	put_file(file);
	return r;
}
Example #3
0
static void exec_command(char *cmd)
{
 #if SFX_LEVEL>=ARJSFXV
  char *cur_dir;
 #else
  char cur_dir[FILENAME_MAX];
 #endif

 if(target_dir[0]=='\0')
  system_cmd(cmd);
 else
 {
  #if SFX_LEVEL>=ARJSFXV
   cur_dir=(char *)malloc_msg(FILENAME_MAX);
  #endif
  file_getcwd(cur_dir, FILENAME_MAX);
  file_chdir(target_dir);
  system_cmd(cmd);
  file_chdir(cur_dir);
  #if SFX_LEVEL>=ARJSFXV
   free(cur_dir);
  #endif
 }
}
Example #4
0
int gfm_tifiles_ungroup(const char *filename, int type)
{
	gchar *dirname = g_path_get_dirname(filename);
	gchar *basename = g_path_get_basename(filename);
	
	gchar *src_file;
	gchar *dst_file;
	
	gchar *folder, *tmp;
	gchar *input;	
	gchar *e;
	int err = 0;

	// Ask for folder
	folder = g_strdup(basename);
	e = strrchr(folder, '.');
	if(e) *e = '\0';

	input = msgbox_input(_("Create new directory"), folder, _("Directory where files will be ungrouped: "));
	g_free(folder);
	if (input == NULL)
		return -1;

	tmp = g_filename_from_utf8(input, -1, NULL, NULL, NULL);
	g_free(input);

	folder = g_strconcat(dirname, G_DIR_SEPARATOR_S, tmp, NULL);
	g_free(tmp);

	// Check for folder existence
	if(!strcmp(dirname, ".") || !strcmp(dirname, ""))
	{
		msgbox_one(MSGBOX_ERROR, _("You can't ungroup in this folder."));
		g_free(basename);
		g_free(dirname);
		return -1;
	}
   
	// Create folder
	if(file_mkdir(folder))
	{
		g_free(basename);
		g_free(dirname);
		return -1;
	}
	file_chdir(folder);

	// Copy file to target
	src_file = g_strdup(filename);	
	dst_file = g_strconcat(folder, G_DIR_SEPARATOR_S, basename, NULL);
	file_copy(src_file, dst_file);
	
	// Ungroup
	if(type == TIFILE_GROUP)
		err = tifiles_ungroup_file(dst_file, NULL);
	else if(type == TIFILE_TIGROUP)
		err = tifiles_untigroup_file(dst_file, NULL);
	if(err)
	{
		gchar *str;

		tifiles_error_get(err, &str);
		msgbox_one(MSGBOX_ERROR, str);
		g_free(str);
	}
	file_chdir("..");

	// And release
	g_free(basename);
	g_free(dirname);
	g_free(src_file);
	g_free(dst_file);

	return 0;
}