-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/3332/
-----------------------------------------------------------

Review request for shindig.


Summary
-------

The purpose of this patch is to remove equality checking against the 
"undefined" keyword, i.e., "foo != undefined".  I've replaced such instances 
with "typeof foo != 'undefined'" instead.  This eliminates possible errors that 
can arise if the "undefined" keyword is reassigned.  

A little background regarding the motivation for this patch.... As of 
ECMAScript 3 and before ECMAScript 5, undefined is a keyword but is not 
restricted, thus, it's value can be re-assigned.  This is generally caused by a 
programming error, such as assigning values to object attributes without first 
checking that the object attribute exists - making them undefined.  When these 
types of errors occur they are difficult to track down and debug.  This patch 
is one way to help reduce possible errors caused by undefined being re-assigned.

To find instances to replace, I searched for this regular expression in the 
code base using Eclipse search within *.js files: =[ ]*undefined[ ]*

I ignored certain files, such as external libs (CodeMirror, etc) and most tests.


Diffs
-----

  
http://svn.apache.org/repos/asf/shindig/trunk/content/samplecontainer/examples/commoncontainer/cconviews.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/container.util/util.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/core.io/io.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/core.json/json-flatten.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/i18n/datetimeparse.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/open-views/viewenhancements-container.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/shindig.container/shindig-container.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/main/javascript/features/shindig.uri/uri.js
 1225624 
  
http://svn.apache.org/repos/asf/shindig/trunk/features/src/test/javascript/features/osapi/batchtest.js
 1225624 

Diff: https://reviews.apache.org/r/3332/diff


Testing
-------

Built everything.  Ensured that the common container sample gadgets still 
render.


Thanks,

Stanton

Reply via email to