userlibandfileserver/fileserver/sfile/sf_request.cpp
changeset 15 4122176ea935
parent 0 a41df078684a
child 81 e7d2d738d3c2
equal deleted inserted replaced
0:a41df078684a 15:4122176ea935
  1640 	Dispatch(ETrue);
  1640 	Dispatch(ETrue);
  1641 	}
  1641 	}
  1642 
  1642 
  1643 TBool CFsMessageRequest::DispatchToPlugin()
  1643 TBool CFsMessageRequest::DispatchToPlugin()
  1644 //
  1644 //
  1645 //
  1645 // Common route: Receive -> Process -> Dispatch -> DispatchToPlugin
  1646 //
  1646 //
  1647 	{
  1647 	{
  1648 	TInt drivenumber = DriveNumber();
  1648 	TInt drivenumber = DriveNumber();
  1649 	if(iCurrentPlugin)
  1649 	if(iCurrentPlugin)
  1650 		{		
  1650 		{		
  1692 					}
  1692 					}
  1693 				else if(err == KPluginMessageForward)
  1693 				else if(err == KPluginMessageForward)
  1694 					{
  1694 					{
  1695 					// The plugin has processed synchronously (case 1)
  1695 					// The plugin has processed synchronously (case 1)
  1696 					//  - Pass the message on to the next plugin
  1696 					//  - Pass the message on to the next plugin
  1697 					FsPluginManager::NextPlugin(iCurrentPlugin, this,(TBool)ETrue);
  1697 					if(FsFunction() != EFsPluginOpen)
  1698 					continue;
  1698 					    {
       
  1699 	                    FsPluginManager::NextPlugin(iCurrentPlugin, this,(TBool)ETrue);
       
  1700 	                    continue;
       
  1701 					    }
       
  1702 					else // FsFunction == EFsPluginOpen
       
  1703 					    {
       
  1704 					    /* 
       
  1705 					     * PluginOpen requests should not be passed down the plugin stack.
       
  1706 					     * 
       
  1707 
       
  1708 					     */
       
  1709 					    iCurrentPlugin = NULL;
       
  1710 					    continue;
       
  1711 					    }
  1699 					}
  1712 					}
  1700 				else if(err == KPluginMessageComplete)
  1713 				else if(err == KPluginMessageComplete)
  1701 					{
  1714 					{
  1702 					// The plugin has processed synchronously (case 2)
  1715 					// The plugin has processed synchronously (case 2)
  1703 					//  - Pass the message back up the stack
  1716 					//  - Pass the message back up the stack