Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Donald Haase
Cockatrice
Commits
83e2e366
Commit
83e2e366
authored
Jul 04, 2011
by
Max-Wilhelm Bruker
Browse files
server memory leak fixed
parent
fd171fa2
Changes
4
Hide whitespace changes
Inline
Side-by-side
common/server_protocolhandler.cpp
View file @
83e2e366
...
@@ -405,6 +405,7 @@ ResponseCode Server_ProtocolHandler::cmdJoinRoom(Command_JoinRoom *cmd, CommandC
...
@@ -405,6 +405,7 @@ ResponseCode Server_ProtocolHandler::cmdJoinRoom(Command_JoinRoom *cmd, CommandC
if
(
!
r
)
if
(
!
r
)
return
RespNameNotFound
;
return
RespNameNotFound
;
QMutexLocker
serverLocker
(
&
server
->
serverMutex
);
QMutexLocker
roomLocker
(
&
r
->
roomMutex
);
QMutexLocker
roomLocker
(
&
r
->
roomMutex
);
r
->
addClient
(
this
);
r
->
addClient
(
this
);
rooms
.
insert
(
r
->
getId
(),
r
);
rooms
.
insert
(
r
->
getId
(),
r
);
...
...
servatrice/src/main.cpp
View file @
83e2e366
...
@@ -129,8 +129,8 @@ int main(int argc, char *argv[])
...
@@ -129,8 +129,8 @@ int main(int argc, char *argv[])
if
(
testRandom
)
if
(
testRandom
)
testRNG
();
testRNG
();
Servatrice
server
(
settings
);
Servatrice
*
server
=
new
Servatrice
(
settings
);
QObject
::
connect
(
&
server
,
SIGNAL
(
destroyed
()),
&
app
,
SLOT
(
quit
()),
Qt
::
QueuedConnection
);
QObject
::
connect
(
server
,
SIGNAL
(
destroyed
()),
&
app
,
SLOT
(
quit
()),
Qt
::
QueuedConnection
);
std
::
cerr
<<
"-------------------------"
<<
std
::
endl
;
std
::
cerr
<<
"-------------------------"
<<
std
::
endl
;
std
::
cerr
<<
"Server initialized."
<<
std
::
endl
;
std
::
cerr
<<
"Server initialized."
<<
std
::
endl
;
...
@@ -142,6 +142,7 @@ int main(int argc, char *argv[])
...
@@ -142,6 +142,7 @@ int main(int argc, char *argv[])
delete
rng
;
delete
rng
;
delete
settings
;
delete
settings
;
delete
loggerThread
;
return
retval
;
return
retval
;
}
}
servatrice/src/servatrice.cpp
View file @
83e2e366
...
@@ -66,7 +66,7 @@ Servatrice::Servatrice(QSettings *_settings, QObject *parent)
...
@@ -66,7 +66,7 @@ Servatrice::Servatrice(QSettings *_settings, QObject *parent)
}
}
bool
threaded
=
settings
->
value
(
"server/threaded"
,
false
).
toInt
();
bool
threaded
=
settings
->
value
(
"server/threaded"
,
false
).
toInt
();
tcpServer
=
new
Servatrice_TcpServer
(
this
,
threaded
);
tcpServer
=
new
Servatrice_TcpServer
(
this
,
threaded
,
this
);
int
port
=
settings
->
value
(
"server/port"
,
4747
).
toInt
();
int
port
=
settings
->
value
(
"server/port"
,
4747
).
toInt
();
qDebug
()
<<
"Starting server on port"
<<
port
;
qDebug
()
<<
"Starting server on port"
<<
port
;
if
(
tcpServer
->
listen
(
QHostAddress
::
Any
,
port
))
if
(
tcpServer
->
listen
(
QHostAddress
::
Any
,
port
))
...
@@ -364,17 +364,20 @@ void Servatrice::updateLoginMessage()
...
@@ -364,17 +364,20 @@ void Servatrice::updateLoginMessage()
void
Servatrice
::
statusUpdate
()
void
Servatrice
::
statusUpdate
()
{
{
QMutexLocker
locker
(
&
dbMutex
);
const
int
uc
=
getUsersCount
();
// for correct mutex locking order
const
int
gc
=
getGamesCount
();
uptime
+=
statusUpdateClock
->
interval
()
/
1000
;
uptime
+=
statusUpdateClock
->
interval
()
/
1000
;
QMutexLocker
locker
(
&
dbMutex
);
checkSql
();
checkSql
();
QSqlQuery
query
;
QSqlQuery
query
;
query
.
prepare
(
"insert into "
+
dbPrefix
+
"_uptime (id_server, timest, uptime, users_count, games_count) values(:id, NOW(), :uptime, :users_count, :games_count)"
);
query
.
prepare
(
"insert into "
+
dbPrefix
+
"_uptime (id_server, timest, uptime, users_count, games_count) values(:id, NOW(), :uptime, :users_count, :games_count)"
);
query
.
bindValue
(
":id"
,
serverId
);
query
.
bindValue
(
":id"
,
serverId
);
query
.
bindValue
(
":uptime"
,
uptime
);
query
.
bindValue
(
":uptime"
,
uptime
);
query
.
bindValue
(
":users_count"
,
getUsersCount
()
);
query
.
bindValue
(
":users_count"
,
uc
);
query
.
bindValue
(
":games_count"
,
g
etGamesCount
()
);
query
.
bindValue
(
":games_count"
,
g
c
);
execSqlQuery
(
query
);
execSqlQuery
(
query
);
}
}
...
...
servatrice/src/serversocketinterface.cpp
View file @
83e2e366
...
@@ -69,6 +69,7 @@ ServerSocketInterface::~ServerSocketInterface()
...
@@ -69,6 +69,7 @@ ServerSocketInterface::~ServerSocketInterface()
delete
xmlReader
;
delete
xmlReader
;
delete
socket
;
delete
socket
;
socket
=
0
;
socket
=
0
;
delete
topLevelItem
;
}
}
void
ServerSocketInterface
::
processProtocolItem
(
ProtocolItem
*
item
)
void
ServerSocketInterface
::
processProtocolItem
(
ProtocolItem
*
item
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment