           for val in ary
             button.element.classList.add val.trim()
 
-        if ( btn.disable? && @condition(btn.disable) ) or ( btn.enable? && !@condition(btn.enable) )
-          button.setEnabled false
+        try
+          if ( btn.disable? && @condition(btn.disable) ) or ( btn.enable? && !@condition(btn.enable) )
+            button.setEnabled false
+        catch err
+          btnErrors.push "#{err.message}\n#{util.inspect(btn, depth: 4)}"
+
+      if btnErrors.length > 0
+        atom.notifications.addError 'Invalid toolbar.json', {
+          detail: btnErrors.join '\n\n'
+          dismissable: true
+          buttons: [{
+            text: 'Edit Config'
+            onDidClick: => atom.workspace.open @configFilePath
+          }]
+        }
 
       @pollFunctions()
 

        return true
      catch err
        @configFilePath = null
        atom.notifications.addError 'Something went wrong creating the Tool Bar config file! Please restart Atom to try again.'
        console.error err
        return false


path = require 'path'
util = require 'util'
fs = require 'fs-plus'
chokidar = require 'chokidar'
globToRegexp = require 'glob-to-regexp'
