You are viewing a single comment's thread.

view the rest of the comments →

[–] [deleted] 0 points 2 points (+2|-0) ago 

[Deleted]

0
0

[–] no_censorship_bruh ago  (edited ago)

Oh, i now get what you mean. I have just tested it and it seem to not accept .exe files. A quick look and renaming an exe file to .jp, seems to be a client side check if the file is an image and can be interpreted.

If i'm not busy, i'll test it more and look on its js, if readable.

edit: seems to be the code to filter non-images

// Filter non images
            var failed_files = [];
            
            files = $.map(files, function(file,i){              
                var image_type_str;
                
                if(typeof file.type == "undefined" || file.type == "") { // Some browsers (Android) don't set the correct file.type
                    image_type_str = file.name.substr(file.name.lastIndexOf('.') + 1).toLowerCase();
                } else {
                    image_type_str = file.type.replace("image/", "");
                }
                // And yes... Android can output shit like image:10 as the full file name so ignore this filter
                if(CHV.fn.uploader.options.image_types.indexOf(image_type_str) == -1 && /android/i.test(navigator.userAgent) == false) {
                    return null;
                }
                if(file.size > CHV.obj.config.image.max_filesize.getBytes()){
                    failed_files.push({id: i, name: file.name.truncate_middle() + " - " + PF.fn._s("File too big.")});
                    return null;
                }
                return file;
            });
            
            if(failed_files.length > 0 && files.length == 0) {
                var failed_message = '';
                for(var i = 0; i < failed_files.length; i++){
                    failed_message += "<li>" + failed_files[i].name + "</li>";
                }
                PF.fn.modal.simple({title: PF.fn._s("Some files couldn't be added"), message: "<ul>" + "<li>" + failed_message + "</ul>"});
                return;
            }