~mateo-salta/nitroshare/nitroshare

« back to all changes in this revision

Viewing changes to src/file/CFileHeader.cpp

  • Committer: Nathan Osman
  • Date: 2012-06-27 23:42:04 UTC
  • Revision ID: admin@quickmediasolutions.com-20120627234204-1b8ovnlmzbcipw08
Modified file transfer protocol to make it a little bit more robust.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* NitroShare - A simple network file sharing tool.
 
2
   Copyright (C) 2012 Nathan Osman
 
3
 
 
4
   This program is free software: you can redistribute it and/or modify
 
5
   it under the terms of the GNU General Public License as published by
 
6
   the Free Software Foundation, either version 3 of the License, or
 
7
   (at your option) any later version.
 
8
 
 
9
   This program is distributed in the hope that it will be useful,
 
10
   but WITHOUT ANY WARRANTY; without even the implied warranty of
 
11
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
12
   GNU General Public License for more details.
 
13
 
 
14
   You should have received a copy of the GNU General Public License
 
15
   along with this program.  If not, see <http://www.gnu.org/licenses/>. */
 
16
 
 
17
#include <QDebug>
 
18
#include <QFile>
 
19
 
 
20
#include <file/CFileHeader.h>
 
21
 
 
22
bool CFileHeader::GetContents(QByteArray & contents)
 
23
{
 
24
    QFile file(m_full_filename);
 
25
 
 
26
    /* Attempt to open the file for reading. */
 
27
    if(file.open(QIODevice::ReadOnly))
 
28
    {
 
29
        /* Read the file contents. */
 
30
        contents = file.readAll();
 
31
 
 
32
        /* If the user has requested compression, then perform that. */
 
33
        if(m_compressed)
 
34
            contents = qCompress(contents, 9);
 
35
 
 
36
        return true;
 
37
    }
 
38
 
 
39
    // TODO: this needs to be more prominent
 
40
 
 
41
    /* Otherwise it looks like we failed to read anything from the file. */
 
42
    qDebug() << "Unable to open" << m_full_filename << "for reading. Aborting transfer.";
 
43
    return false;
 
44
}