summaryrefslogtreecommitdiff
path: root/src/server.cc
diff options
context:
space:
mode:
authordeva <deva>2005-04-19 18:33:29 +0000
committerdeva <deva>2005-04-19 18:33:29 +0000
commit6e952aa069f0a78d6f784d4c132969a2bb63acb7 (patch)
tree95c9bd94a656ff92952164a48806a62f04008364 /src/server.cc
parent7af06f473e99f02a0cb8978aee67a61b5718664d (diff)
Server part works again.
Diffstat (limited to 'src/server.cc')
-rw-r--r--src/server.cc24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/server.cc b/src/server.cc
index e94b576..3370586 100644
--- a/src/server.cc
+++ b/src/server.cc
@@ -76,21 +76,20 @@ MovEncoder *newMovEncoder(char* cpr)
return enc;
}
-void newConnection(Socket *s)
+void newConnection(Socket *socket)
{
n_savestate savestate = LATER;
n_header h;
- Frame *f;
+ Frame *frame;
Frame *freeze_frame = NULL;
MovEncoder *enc = NULL;
- // FIXME: Allocate buffer
- f = new Frame(NULL, 0);
+ frame = new Frame((unsigned char *)malloc(DVPACKAGE_SIZE), DVPACKAGE_SIZE);
printf("New connection[pid: %d]...\n", getpid());
- Network n = Network(s);
- while(int ret = n.recvPackage(&h, f->data, DVPACKAGE_SIZE)) {
+ Network network = Network(socket);
+ while(int ret = network.recvPackage(&h, frame->data, DVPACKAGE_SIZE)) {
if(ret == -1) {
fprintf(stderr, "An error occurred...!\n");
break;
@@ -108,13 +107,13 @@ void newConnection(Socket *s)
delete freeze_frame;
freeze_frame = NULL;
} else {
- saveFrameAsImage(h.header.h_data.cpr, f);
+ saveFrameAsImage(h.header.h_data.cpr, frame);
}
}
if(h.header.h_data.record) {
if(!enc) enc = newMovEncoder(h.header.h_data.cpr);
- enc->encode(f);
+ enc->encode(frame);
}
if(h.header.h_data.savestate) {
@@ -123,18 +122,17 @@ void newConnection(Socket *s)
if(h.header.h_data.freeze) {
if(freeze_frame) delete freeze_frame;
- freeze_frame = f;
+ freeze_frame = frame;
} else {
- delete f;
+ delete frame;
}
- // FIXME: Allocate buffer
- f = new Frame(NULL, 0);
+ frame = new Frame((unsigned char *)malloc(DVPACKAGE_SIZE), DVPACKAGE_SIZE);
}
// TODO: Use save state
- delete f;
+ delete frame;
if(enc) delete enc;
printf("Connection end[pid: %d]...\n", getpid());