fixed: UGContainer<Type> used a std::vector<Type> and when a new item was inserted

then current iterators (and pointers) were invalidated
         now we are using std::vector<Type*>
         this caused some crashes when a new user was added by 'adduser' winix function
added:   plugin 'export' is able to upload files on a remote server now
         (not finished yet)
changed: Thumb class is now called: Image
         and we are able to resize images too
         (some new options in the config and in mount points)
added:   some new plugin messages



git-svn-id: svn://ttmath.org/publicrep/winix/trunk@764 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2011-09-13 06:08:34 +00:00
parent 72be443414
commit 39923d6617
58 changed files with 2258 additions and 654 deletions

View File

@@ -1523,7 +1523,7 @@ void Db::GetUsers(UGContainer<User> & user_tab)
u.email = AssertValueWide(r, i, cemail);
u.notify = AssertValueInt(r, i, cnotify);
log << log2 << "Db: user: id:" << u.id << ", name:" << u.name << ", super_user:" << u.super_user << logend;
log << log2 << "Db: user: id: " << u.id << ", name: " << u.name << ", super_user: " << u.super_user << logend;
iter = user_tab.PushBack( u );
@@ -1537,8 +1537,8 @@ void Db::GetUsers(UGContainer<User> & user_tab)
if( !IsNull(r, i, cgroup_id) && group_id!=-1 && iter!=user_tab.End() )
{
iter->groups.push_back(group_id);
log << log3 << "Db: user:" << iter->name << " is a member of group_id:" << group_id << logend;
(*iter)->groups.push_back(group_id);
log << log3 << "Db: user:" << (*iter)->name << " is a member of group_id: " << group_id << logend;
}
}
}
@@ -1581,7 +1581,7 @@ void Db::GetGroups(UGContainer<Group> & group_tab)
if( g.id != last_id )
{
g.name = AssertValueWide(r, i, cname);
log << log3 << "Db: get group, id:" << g.id << ", group:" << g.name << logend;
log << log3 << "Db: get group, id: " << g.id << ", group: " << g.name << logend;
iter = group_tab.PushBack( g );
last_id = g.id;
@@ -1591,8 +1591,8 @@ void Db::GetGroups(UGContainer<Group> & group_tab)
if( !IsNull(r, i, cuser_id) && user_id!=-1 && !group_tab.Empty() )
{
iter->members.push_back(user_id);
log << log3 << "Db: get group member: user_id:" << user_id << logend;
(*iter)->members.push_back(user_id);
log << log3 << "Db: get group member: user_id: " << user_id << logend;
}
}
}