title: Matlab crash when running user defined blocks in simulink
body: <p>I created a user defined block with single input and single output in simulink and it works perfectly fine. But when i create a user defined block without an input, run this block in a simulink model, MATLAB Crashes. Below is the code for the C S-function.</p>
  
  <p>Any information regarding this is appreciated.</p>
  
  <hr>
  
  <pre><code>#define S_FUNCTION_NAME My5times /* Defines and Includes */
  #define S_FUNCTION_LEVEL 2
  
  #include "simstruc.h"
  
  static void mdlInitializeSizes(SimStruct *S)
  {
       ssSetNumSFcnParams(S, 2);    
       if (ssGetNumSFcnParams(S) != ssGetSFcnParamsCount(S))     
       {    
          return; /* Parameter mismatch reported by the Simulink engine*/    
       }
  
      if (!ssSetNumInputPorts(S, 0)) 
          return;    
      ssSetInputPortWidth(S, 0, DYNAMICALLY_SIZED);
      ssSetInputPortDirectFeedThrough(S, 0, 0);
  
      if (!ssSetNumOutputPorts(S,1)) 
          return;
      ssSetOutputPortWidth(S, 0, DYNAMICALLY_SIZED);
      ssSetNumSampleTimes(S, 1);
  
      /* Take care when specifying exception free code - see sfuntmpl.doc */    
      ssSetOptions(S, SS_OPTION_EXCEPTION_FREE_CODE);    
  }
  
  static void mdlInitializeSampleTimes(SimStruct *S)
  {
      ssSetSampleTime(S, 0, INHERITED_SAMPLE_TIME);    
      ssSetOffsetTime(S, 0, 0.0);    
  }    
  
  static void mdlOutputs(SimStruct *S, int_T tid)    
  {    
      int_T i;    
  
      /*int_T param = mxGetScalar(ssGetSFcnParam(S,0));*/        
      int_T buflen = mxGetN(ssGetSFcnParam(S, 0)) * sizeof(mxChar) + 1;    
      char_T* StringParam = mxMalloc(buflen);     
      int_T status = mxGetString(ssGetSFcnParam(S, 0), StringParam, buflen); 
  
      /* mexPrintf("The string being passed as a Paramater is - %s\n ", String);*/
      /*  InputRealPtrsType uPtrs = ssGetInputPortRealSignalPtrs(S, 0);*/
  
      real_T *y = ssGetOutputPortRealSignal(S, 0); 
      int_T width = ssGetOutputPortWidth(S, 0);    
      for (i = 0 ; i &lt; width ; i++)     
      {    
          *y++ = 1;    
      }
  }
  
  static void mdlTerminate(SimStruct *S){}    
  
  #ifdef MATLAB_MEX_FILE /* Is this file being compiled as a MEX-file? */
  #include "simulink.c" /* MEX-file interface mechanism */    
  #else    
  #include "cg_sfun.h" /* Code generation registration function */    
  #endif
  </code></pre>