private void inode() { for (; index < directory_list.Count - 1; index++) { try { FileIndexorNode m = new FileIndexorNode(directory_list[index].Item1, directory_list[index].Item2); if (directory_list[index + 1].Item1.Contains(directory_list[index].Item1)) { node.AddItem(m); index += 1; iinode(ref m); break; } } catch (Exception ex) { error_list.Add(new Tuple <string, string>("inode", ex.ToString())); } } }
private void iinode(ref FileIndexorNode node) { for ( ; index < directory_list.Count; index++) { if (directory_list[index].Item1.Contains(node.Path)) { FileIndexorNode m = new FileIndexorNode(directory_list[index].Item1, directory_list[index].Item2); node.AddItem(m); if (index < directory_list.Count - 1 && directory_list[index + 1].Item1.Contains(directory_list[index].Item1)) { index++; iinode(ref m); } node.Size += m.Size; } else { index--; break; } } }