From 411f8cb9effef0310abbb39f9ae53adf6ecf8aaf Mon Sep 17 00:00:00 2001
From: hmhealey <harrisonmhealey@gmail.com>
Date: Tue, 28 Jul 2015 11:53:05 -0400
Subject: Fixed FileAttachment component to not spam the server with requests
 when displaying a zero byte file

---
 web/react/components/file_attachment.jsx | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

(limited to 'web/react/components/file_attachment.jsx')

diff --git a/web/react/components/file_attachment.jsx b/web/react/components/file_attachment.jsx
index e730af5f2..346819bdd 100644
--- a/web/react/components/file_attachment.jsx
+++ b/web/react/components/file_attachment.jsx
@@ -12,7 +12,7 @@ module.exports = React.createClass({
         handleImageClick: React.PropTypes.func
     },
     getInitialState: function() {
-        return {fileSize: 0};
+        return {fileSize: -1};
     },
     componentDidMount: function() {
         var filename = this.props.filenames[this.props.index];
@@ -80,7 +80,7 @@ module.exports = React.createClass({
             thumbnail = <div className={"file-icon "+utils.getIconClassName(type)}/>;
         }
 
-        if (!this.state.fileSize) {
+        if (this.state.fileSize < 0) {
             var self = this;
 
             // asynchronously request the size of the file so that we can display it next to the thumbnail
@@ -89,6 +89,11 @@ module.exports = React.createClass({
             });
         }
 
+        var fileSizeString = "";
+        if (this.state.fileSize >= 0) {
+            fileSizeString = utils.fileSizeToString(this.state.fileSize);
+        }
+
         return (
             <div className="post-image__column" key={filename}>
                 <a className="post-image__thumbnail" href="#" onClick={this.props.handleImageClick}
@@ -99,7 +104,7 @@ module.exports = React.createClass({
                     <div className="post-image__name">{fileInfo.name}</div>
                     <div>
                         <span className="post-image__type">{fileInfo.ext.toUpperCase()}</span>
-                        <span className="post-image__size">{this.state.fileSize ? utils.fileSizeToString(this.state.fileSize) : ""}</span>
+                        <span className="post-image__size">{this.fileSizeString}</span>
                     </div>
                 </div>
             </div>
-- 
cgit v1.2.3-1-g7c22

