Esempio n. 1
0
long long *gen_hashes (char *s) {
  static long long h[MAX_NAME_SIZE + 1];

  if (strlen (s) >= MAX_NAME_SIZE / 2 - 1) {
    h[0] = 0;
    return h;
  }

  string_to_utf8 ((unsigned char *)s, prep_ibuf);

  const int yo = 1105, e = 1077, kl = 160;

  int in_kludge = 0;
  int hn = 0;
  long long yo_h = 0;
  long long cur_h = 0;

  int *v;
  for (v = prep_ibuf; *v; v++) {
    if (cur_h == 0 && *v == kl) {
      in_kludge = 1;
    }

    if (*v == '+') {
      if (in_kludge) {
        h[hn++] = cur_h;
        in_kludge = 0;
      }
      cur_h = 0;
      yo_h = 0;
    } else {
      cur_h = cur_h * HASH_MUL + *v;

      if (*v == yo) {
        yo_h = yo_h * HASH_MUL + e;
      } else {
        yo_h = yo_h * HASH_MUL + *v;
      }
    }

    if (!in_kludge) {
      if (cur_h) {
        h[hn++] = cur_h;
      }

      if (yo_h != cur_h && yo_h) {
        h[hn++] = yo_h;
      }
    }
  }

  assert (in_kludge == 0);
  assert (yo_h == 0);
  assert (cur_h == 0);
  h[hn++] = 0;
  assert (hn < MAX_NAME_SIZE);
  return h;
}
Esempio n. 2
0
	void ZipFile::init()
	{
		zlib_filefunc64_def file_functions;
		unz_file_info64 info;
		unz64_file_pos position;
		boost::scoped_array<char> file_name;
		String index;
		Uint32 size;
		Sint32 ok;

		file_functions.zopen64_file = open_ifstream_func;
		file_functions.zread_file = read_istream_func;
		file_functions.zwrite_file = write_istream_func;
		file_functions.ztell64_file = tell_istream_func;
		file_functions.zseek64_file = seek_istream_func;
		file_functions.zclose_file = close_istream_func;
		file_functions.zerror_file = error_istream_func;

		m_file = unzOpen2_64(utf8_to_string(get_name()).c_str(),
			&file_functions);

		ok = unzGoToFirstFile(m_file);

		while (ok == UNZ_OK)
		{
			unzGetFilePos64(m_file, &position);

			unzGetCurrentFileInfo64(m_file, &info, 0, 0, 0, 0, 0,
				0);

			size = info.size_filename;

			file_name.reset(new char[size + 1]);

			unzGetCurrentFileInfo64(m_file, 0, file_name.get(),
				size, 0, 0, 0, 0);

			index = String(string_to_utf8(std::string(
				file_name.get(), size)));

			m_files[index] = ZipFileEntry(position);

			ok = unzGoToNextFile(m_file);
		}
	}
Esempio n. 3
0
char *prepare_str (char *x) {
  if (strlen (x) >= MAX_NAME_SIZE / 4) {
    return NULL;
  }

  string_to_utf8 ((unsigned char *)x, prep_ibuf);
  int *v = prepare_str_UTF8 (prep_ibuf);
  char *s = prep_buf;

  while (*v != 0) {
    s += put_char_utf8 (*v++, s);
  }
  *s++ = 0;

  assert (s - prep_buf < MAX_NAME_SIZE);

  char *res = dl_malloc (s - prep_buf);
  if (res == NULL) {
    return res;
  }

  memcpy (res, prep_buf, s - prep_buf);
  return res;
}
Esempio n. 4
0
char* rygel_http_item_uri_to_string (RygelHTTPItemURI* self) {
#line 462 "rygel-http-item-uri.c"
	char* result = NULL;
	gchar* _tmp1_;
	gint _data_size_;
	gint data_length1;
	gint _tmp0_;
	gchar* data;
	char* _tmp2_;
	char* _tmp3_;
	char* escaped;
	char* path;
#line 93 "rygel-http-item-uri.vala"
	g_return_val_if_fail (self != NULL, NULL);
#line 475 "rygel-http-item-uri.c"
	data = (_tmp1_ = string_to_utf8 (self->item_id, &_tmp0_), data_length1 = _tmp0_, _data_size_ = data_length1, _tmp1_);
#line 98 "rygel-http-item-uri.vala"
	escaped = (_tmp3_ = g_uri_escape_string (_tmp2_ = g_base64_encode ((guchar*) data, data_length1), "", TRUE), _g_free0 (_tmp2_), _tmp3_);
#line 101 "rygel-http-item-uri.vala"
	path = g_strconcat ("/item/", escaped, NULL);
#line 103 "rygel-http-item-uri.vala"
	if (self->transcode_target != NULL) {
#line 483 "rygel-http-item-uri.c"
		char* _tmp4_;
		char* _tmp6_;
		char* _tmp5_;
#line 104 "rygel-http-item-uri.vala"
		escaped = (_tmp4_ = g_uri_escape_string (self->transcode_target, "", TRUE), _g_free0 (escaped), _tmp4_);
#line 105 "rygel-http-item-uri.vala"
		path = (_tmp6_ = g_strconcat (path, _tmp5_ = g_strconcat ("/transcoded/", escaped, NULL), NULL), _g_free0 (path), _tmp6_);
#line 491 "rygel-http-item-uri.c"
		_g_free0 (_tmp5_);
	} else {
#line 106 "rygel-http-item-uri.vala"
		if (self->thumbnail_index >= 0) {
#line 496 "rygel-http-item-uri.c"
			char* _tmp9_;
			char* _tmp8_;
			char* _tmp7_;
#line 107 "rygel-http-item-uri.vala"
			path = (_tmp9_ = g_strconcat (path, _tmp8_ = g_strconcat ("/thumbnail/", _tmp7_ = g_strdup_printf ("%i", self->thumbnail_index), NULL), NULL), _g_free0 (path), _tmp9_);
#line 502 "rygel-http-item-uri.c"
			_g_free0 (_tmp8_);
			_g_free0 (_tmp7_);
		} else {
#line 108 "rygel-http-item-uri.vala"
			if (self->subtitle_index >= 0) {
#line 508 "rygel-http-item-uri.c"
				char* _tmp12_;
				char* _tmp11_;
				char* _tmp10_;
#line 109 "rygel-http-item-uri.vala"
				path = (_tmp12_ = g_strconcat (path, _tmp11_ = g_strconcat ("/subtitle/", _tmp10_ = g_strdup_printf ("%i", self->subtitle_index), NULL), NULL), _g_free0 (path), _tmp12_);
#line 514 "rygel-http-item-uri.c"
				_g_free0 (_tmp11_);
				_g_free0 (_tmp10_);
			}
		}
	}
	result = rygel_http_item_uri_create_uri_for_path (self, path);
	data = (g_free (data), NULL);
	_g_free0 (escaped);
	_g_free0 (path);
#line 112 "rygel-http-item-uri.vala"
	return result;
#line 526 "rygel-http-item-uri.c"
}
Esempio n. 5
0
static void __lambda3_ (Block1Data* _data1_) {
	gchar* chararray = NULL;
	const gchar* _tmp0_ = NULL;
	const gchar* _tmp1_ = NULL;
	gint _tmp2_ = 0;
	gchar* _tmp3_ = NULL;
	gint chararray_length1 = 0;
	gint _chararray_size_ = 0;
	GString* temp = NULL;
	GString* _tmp4_ = NULL;
	GString* _tmp15_ = NULL;
	const gchar* _tmp16_ = NULL;
#line 44 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_tmp0_ = gtk_button_get_label (_data1_->button);
#line 44 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_tmp1_ = _tmp0_;
#line 44 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_tmp3_ = string_to_utf8 (_tmp1_, &_tmp2_);
#line 44 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	chararray = _tmp3_;
#line 44 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	chararray_length1 = _tmp2_;
#line 44 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_chararray_size_ = chararray_length1;
#line 45 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_tmp4_ = g_string_new ("");
#line 45 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	temp = _tmp4_;
#line 183 "gtk-testing.c"
	{
		gint i = 0;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
		i = 0;
#line 188 "gtk-testing.c"
		{
			gboolean _tmp5_ = FALSE;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
			_tmp5_ = TRUE;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
			while (TRUE) {
#line 195 "gtk-testing.c"
				gint _tmp7_ = 0;
				gchar* _tmp8_ = NULL;
				gint _tmp8__length1 = 0;
				GString* _tmp9_ = NULL;
				gchar* _tmp10_ = NULL;
				gint _tmp10__length1 = 0;
				gint _tmp11_ = 0;
				gchar _tmp12_ = '\0';
				gchar* _tmp13_ = NULL;
				gchar* _tmp14_ = NULL;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				if (!_tmp5_) {
#line 208 "gtk-testing.c"
					gint _tmp6_ = 0;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
					_tmp6_ = i;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
					i = _tmp6_ + 1;
#line 214 "gtk-testing.c"
				}
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp5_ = FALSE;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp7_ = i;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp8_ = chararray;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp8__length1 = chararray_length1;
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				if (!(_tmp7_ < _tmp8__length1)) {
#line 46 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
					break;
#line 228 "gtk-testing.c"
				}
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp9_ = temp;
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp10_ = chararray;
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp10__length1 = chararray_length1;
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp11_ = i;
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp12_ = _tmp10_[_tmp11_];
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp13_ = g_strdup_printf ("%c", _tmp12_);
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_tmp14_ = _tmp13_;
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				g_string_prepend (_tmp9_, _tmp14_);
#line 47 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
				_g_free0 (_tmp14_);
#line 248 "gtk-testing.c"
			}
		}
	}
#line 49 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_tmp15_ = temp;
#line 49 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_tmp16_ = _tmp15_->str;
#line 49 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	gtk_button_set_label (_data1_->button, _tmp16_);
#line 43 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	_g_string_free0 (temp);
#line 43 "/home/riley/git/vala/gtk-testing/src/gtk-testing.vala"
	chararray = (g_free (chararray), NULL);
#line 262 "gtk-testing.c"
}