By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release. View | Details | Raw Unified | Return to bug 2528
Collapse All | Expand All

(-)a/vcs/subversion/svn_tdeio.cpp (-7 / +58 lines)
Lines 47-52 Link Here
47
#include <subversion-1/svn_ra.h>
47
#include <subversion-1/svn_ra.h>
48
#include <subversion-1/svn_time.h>
48
#include <subversion-1/svn_time.h>
49
#include <subversion-1/svn_cmdline.h>
49
#include <subversion-1/svn_cmdline.h>
50
#include <subversion-1/svn_version.h>
50
51
51
#include <kmimetype.h>
52
#include <kmimetype.h>
52
#include <tqfile.h>
53
#include <tqfile.h>
Lines 110-119 static svn_error_t *write_to_string(void *baton, const char *data, apr_size_t *l Link Here
110
	return SVN_NO_ERROR;
111
	return SVN_NO_ERROR;
111
}
112
}
112
113
113
static int
114
#if (SVN_VER_MAJOR == 1 && SVN_VER_MINOR <= 8)
114
compare_items_as_paths (const svn_sort__item_t*a, const svn_sort__item_t*b) {
115
typedef svn_sort__item_t svn_sort_item_type;
115
  return svn_path_compare_paths ((const char *)a->key, (const char *)b->key);
116
#else
117
// Taken from subversion 1.8.10 source code and modified where needed
118
119
// Same as svn_sort__item_t
120
typedef struct svn_sort_item_type {
121
  const void *key;  // pointer to the key
122
  apr_ssize_t klen; // size of the key
123
  void *value;      // pointer to the value
124
} svn_sort_item_type;
125
126
apr_array_header_t* svn_sort__hash(apr_hash_t *ht,
127
        int (*comparison_func)(const svn_sort__item_t*, const svn_sort__item_t*), apr_pool_t *pool)
128
{
129
  apr_hash_index_t *hi;
130
  apr_array_header_t *ary;
131
  svn_boolean_t sorted;
132
  svn_sort_item_type *prev_item;
133
134
  /* allocate an array with enough elements to hold all the keys. */
135
  ary = apr_array_make(pool, apr_hash_count(ht), sizeof(svn_sort_item_type));
136
137
  /* loop over hash table and push all keys into the array */
138
  sorted = TRUE;
139
  prev_item = NULL;
140
  for (hi = apr_hash_first(pool, ht); hi; hi = apr_hash_next(hi))
141
	{
142
		svn_sort_item_type *item = (svn_sort_item_type*)apr_array_push(ary);
143
		apr_hash_this(hi, &item->key, &item->klen, &item->value);
144
145
		if (prev_item == NULL)
146
		{
147
			prev_item = item;
148
			continue;
149
		}
150
151
		if (sorted)
152
		{
153
			sorted = (comparison_func((svn_sort__item_t*)prev_item, (svn_sort__item_t*)item) < 0);
154
			prev_item = item;
155
		}
156
	}
157
158
  /* quicksort the array if it isn't already sorted.  */
159
  if (!sorted)
160
  {
161
    qsort(ary->elts, ary->nelts, ary->elt_size,
162
          (int (*)(const void*, const void*))comparison_func);
163
  }
164
165
  return ary;
116
}
166
}
167
#endif
117
168
118
tdeio_svnProtocol::tdeio_svnProtocol(const TQCString &pool_socket, const TQCString &app_socket)
169
tdeio_svnProtocol::tdeio_svnProtocol(const TQCString &pool_socket, const TQCString &app_socket)
119
	: SlaveBase("tdeio_svn", pool_socket, app_socket) {
170
	: SlaveBase("tdeio_svn", pool_socket, app_socket) {
Lines 461-476 void tdeio_svnProtocol::listDir(const KURL& url){ Link Here
461
  apr_array_header_t *array;
512
  apr_array_header_t *array;
462
  int i;
513
  int i;
463
514
464
  array = svn_sort__hash (dirents, compare_items_as_paths, subpool);
515
  array = svn_sort__hash (dirents, svn_sort_compare_items_as_paths, subpool);
465
516
466
  UDSEntry entry;
517
  UDSEntry entry;
467
  for (i = 0; i < array->nelts; ++i) {
518
  for (i = 0; i < array->nelts; ++i) {
468
	  entry.clear();
519
	  entry.clear();
469
      const char *utf8_entryname, *native_entryname;
520
      const char *utf8_entryname, *native_entryname;
470
      svn_dirent_t *dirent;
521
      svn_dirent_t *dirent;
471
      svn_sort__item_t *item;
522
      svn_sort_item_type *item;
472
523
473
      item = &APR_ARRAY_IDX (array, i, svn_sort__item_t);
524
      item = &APR_ARRAY_IDX (array, i, svn_sort_item_type);
474
525
475
      utf8_entryname = (const char*)item->key;
526
      utf8_entryname = (const char*)item->key;
476
527
Lines 2071-2077 void tdeio_svnProtocol::notify(void *baton, const char *path, svn_wc_notify_acti Link Here
2071
	tdeio_svnProtocol *p = ( tdeio_svnProtocol* )nb->master;
2122
	tdeio_svnProtocol *p = ( tdeio_svnProtocol* )nb->master;
2072
	if (!p) kdDebug(9036) << " Null Pointer at Line " << __LINE__ << endl;
2123
	if (!p) kdDebug(9036) << " Null Pointer at Line " << __LINE__ << endl;
2073
2124
2074
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "path" , TQString::fromUtf8( path )); 
2125
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "path" , TQString::fromUtf8( path ));
2075
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "action", TQString::number( action ));
2126
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "action", TQString::number( action ));
2076
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "kind", TQString::number( kind ));
2127
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "kind", TQString::number( kind ));
2077
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "mime_t", TQString::fromUtf8( mime_type ));
2128
	p->setMetaData(TQString::number( p->counter() ).rightJustify( 10,'0' )+ "mime_t", TQString::fromUtf8( mime_type ));

Return to bug 2528